Поновлення дробу


Submit solution

Points: 100 (partial)
Time limit: 0.1s
Memory limit: 250M

Author:
Problem type
Allowed languages
C, C++, Java, Python

SashaKyzenko захоплюється математикою, і найбільшу цікавість для нього становлять дроби. Йому відомо що дріб називається правильним, якщо його чисельник \(a\) менший знаменника \(b\) \((a < b)\).

Також він знає, що дріб називається нескоротним, якщо чисельник і знаменник взаємно прості ( їх найбільший спільний дільник рівний одиниці).

SashaKyzenko придумав метод шифрування дробу, який переводить правильний нескоротний дріб у натуральне число \(n\), що рівне сумі чисельника та знаменника заданого дробу.

SashaKyzenko бажає написати програму, яка поновлює заданий дріб. osinski йому вказав на те, що не завжди це можна зробити однозначно, а тому він вирішив знайти

найбільший правильний нескоротний дріб , сума чисельника та знаменника якого рівна \(n\). Допоможіть SashaKyzenko впоратися із цією проблемою.

Входові дані:

Єдиний рядок стандартного входового потоку містить одне натуральне число \(n\) \((3 \le n \le 1000 )\) - сума чисельника та знаменника шуканого дробу.

Вbходові дані:

У єдиний рядок стандартного виходовго потоку виведіть через пропуск, два натуральних числа \(a\) та \(b\) - чисельник та знаменник відповідного нескоротного правильного дробу -

цей дряб має бути найбільшим

Приклад входових даних - 1:
 13
Приклад виходових даних - 1:
 6 7
Приклад входових даних - 2:
 4
Приклад виходових даних - 2:
1 3

Comments

There are no comments at the moment.