Предмет: Информатика, автор: DEXtopZED

Задача 5: Кинотеатр
В кинотеатре места часто расставляют со сдвигом соседних рядов для удобства зрителей. Пусть в таком кинотеатре 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-го проданного билета.

Система оценивания
Решения, правильно работающие, когда входные числа не превосходят 1000, будут оцениваться в 60 баллов.

Пример:
Ввод:
10, 25
Вывод:
3, 4
Пояснение:
Билеты с 1 по 10 будут проданы в первый ряд. Билеты с 11 по 21 будут проданы во второй ряд. В третий ряд будут проданы билеты, начиная с 22-го, 25-й билет окажется на 4-м месте 3-го ряда.
СДАТЬ РЕШЕНИЕ В ЯЗЫКЕ ПРОГРАММИРОВАНИЯ- ЖЕЛАТЕЛЬНО PYTHON 3 3.6.8

Ответы

Автор ответа: motemotichka000
6

Ответ:

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))

Объяснение:

Язык:питон

Тоже олимпиаду делаешь?


DEXtopZED: Да)
DEXtopZED: Точно верно??
Похожие вопросы