Предмет: Информатика,
автор: aoihosdks
В кинотеатре места часто расставляют со сдвигом соседних рядов для удобства зрителей. Пусть в таком кинотеатре N мест в 1-м, 3-м, 5-м и всех нечётных рядах и N + 1 место во 2-м, 4-м и всех чётных рядах. Места в рядах нумеруются от 1 до N в нечётных рядах и от 1 до N + 1 в чётных рядах.
Касса продаёт билеты подряд: сначала в 1-й ряд на места с 1-го по N-е, потом — во 2-й ряд на места с 1-го по N + 1-е, затем в 3-й ряд с 1-го места и т.д.
Определите номер ряда и номер места для K-го проданного билета.
Входные данные
Программа получает на вход два целых числа. В первой строке записано число N (1 ≤ N ≤ 109) — количество мест в 1-м ряду кинотеатра. Во второй строке записано число K — порядковый номер проданного билета (1 ≤ K ≤ 2×109).
Выходные данные
Программа должна вывести два числа: номер ряда и номер места K-го проданного билета.
Пример
Ввод
10
25
Вывод
3 4
Пояснение
Билеты с 1 по 10 будут проданы в первый ряд. Билеты с 11 по 21 будут проданы во второй ряд. В третий ряд будут проданы билеты, начиная с 22-го, 25-й билет окажется на 4-м месте 3-го ряда.
Ответы
Автор ответа:
11
Ответ:
n=int(input('n? '))
k=int(input('k? '))
r=0
while k>0: nr=(n+1 if r%2 else n); k-=nr; r+=1
print ('Ряд',r,'Место',nr-abs(k))
Объяснение:
anechka1946:
var нужно
Автор ответа:
6
Ответ:
def run():
n = int(input())
k = int(input())
r = 1
while k > n:
k -= n
if r % 2 == 1:
n += 1
else:
n -= 1
r += 1
return str(r) + ' ' + str(k)
print(run())
Объяснение:
Python, на 60 баллов
Похожие вопросы
Предмет: Информатика,
автор: maralfak
Предмет: Литература,
автор: aprel1409
Предмет: Математика,
автор: элязаяц
Предмет: Литература,
автор: gogishvilipite
Предмет: Биология,
автор: mariannabatman