АВТ
Language:

Remote Training on Programming

Problems On-line status Contests FAQ
For authors:
Register  ||  Login
 
Hello, Guest! Login or register.

897. Euclid's algorithm

Time Limit: 1 seconds
Memory Limit:32768KB
Points:2
View Problem Statistics Submit Problem added Undefined

Для нахождения наибольшего общего делителя двух чисел a и b обычно используется алгоритм Евклида.
На языке Pascal его можно записать так:
function nod(a,b: integer): integer;
var
  c: integer;
begin
  while b<>0 do begin
    c := a mod b;
    a := b;
    b := c;
  end;
  nod := a;
end;
Вам требуется найти такую пару чисел a и b, лежащих в диапазоне от 1 до N, чтобы цикл while в функции nod выполнился максимальное число раз.

Входные данные:
Натуральное число N от 1 до 231-1.

Выходные данные:
Пара натуральных чисел a и b через пробел. Если решений несколько, выведите любое.

Пример входных данных:
10

Пример результата: 5 8

View Problem Statistics Submit Author/source:
Problems from Contests / Trainings of Vologda STU / Training 28.10.2010 /
897. 41. B - Divisibility 470. C - Divide into pairs 99. D - Joke
We can all benefit by doing occasional "toy" programs, when artificial restrictions are set up, so that we are forced to push our abilities to the limit. The art of tackling miniproblems with all our energy will sharpen our talents for the real problems. Donald E. Knuth.
time generating 0.624 sec.
© Copyright VSTU, AVT, Nosov D.A.