aboutsummaryrefslogtreecommitdiff
path: root/challenge-136/abigail/ruby/ch-1.rb
blob: 37e005400c1710eb269fd6c17df9f9ccb320cc3d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/ruby

#
# See ../README.md
#
 
#
# Run as: ruby ch-1.rb < input-file
#

def is_power_of_n (number, n)
    return number <  1    ? false
         : number == 1    ? true
         : number % n > 0 ? false
         : is_power_of_n(number / n, n)
end

def is_power_of_2 (number)
    return is_power_of_n(number, 2)
end

ARGF . each_line do
    | line |
    m, n = line . split . map {|x| x . to_i}
    if n % 2 == 1 || m % 2 == 1 then
        puts (0)
    else
        r = m . gcd (n)
        puts (r > 1 && is_power_of_2(r) ? 1 : 0)
    end
end