CF180B.Divisibility Rules

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Vasya studies divisibility rules at school. Here are some of them:

  • Divisibility by 22 . A number is divisible by 22 if and only if its last digit is divisible by 22 or in other words, is even.
  • Divisibility by 33 . A number is divisible by 33 if and only if the sum of its digits is divisible by 33 .
  • Divisibility by 44 . A number is divisible by 44 if and only if its last two digits form a number that is divisible by 44 .
  • Divisibility by 55 . A number is divisible by 55 if and only if its last digit equals 55 or 00 .
  • Divisibility by 66 . A number is divisible by 66 if and only if it is divisible by 22 and 33 simultaneously (that is, if the last digit is even and the sum of all digits is divisible by 33 ).
  • Divisibility by 77 . Vasya doesn't know such divisibility rule.
  • Divisibility by 88 . A number is divisible by 88 if and only if its last three digits form a number that is divisible by 88 .
  • Divisibility by 99 . A number is divisible by 99 if and only if the sum of its digits is divisible by 99 .
  • Divisibility by 1010 . A number is divisible by 1010 if and only if its last digit is a zero.
  • Divisibility by 1111 . A number is divisible by 1111 if and only if the sum of digits on its odd positions either equals to the sum of digits on the even positions, or they differ in a number that is divisible by 1111 .

Vasya got interested by the fact that some divisibility rules resemble each other. In fact, to check a number's divisibility by 22 , 44 , 55 , 88 and 1010 it is enough to check fulfiling some condition for one or several last digits. Vasya calls such rules the 22 -type rules.

If checking divisibility means finding a sum of digits and checking whether the sum is divisible by the given number, then Vasya calls this rule the 33 -type rule (because it works for numbers 33 and 99 ).

If we need to find the difference between the sum of digits on odd and even positions and check whether the difference is divisible by the given divisor, this rule is called the 1111 -type rule (it works for number 1111 ).

In some cases we should divide the divisor into several factors and check whether rules of different types ( 22 -type, 33 -type or 1111 -type) work there. For example, for number 66 we check 22 -type and 33 -type rules, for number 6666 we check all three types. Such mixed divisibility rules are called 66 -type rules.

And finally, there are some numbers for which no rule works: neither 22 -type, nor 33 -type, nor 1111 -type, nor 66 -type. The least such number is number 77 , so we'll say that in such cases the mysterious 77 -type rule works, the one that Vasya hasn't discovered yet.

Vasya's dream is finding divisibility rules for all possible numbers. He isn't going to stop on the decimal numbers only. As there are quite many numbers, ha can't do it all by himself. Vasya asked you to write a program that determines the divisibility rule type in the bb -based notation for the given divisor dd .

输入格式

The first input line contains two integers bb and dd ( 2<=b,d<=1002<=b,d<=100 ) — the notation system base and the divisor. Both numbers are given in the decimal notation.

输出格式

On the first output line print the type of the rule in the bb -based notation system, where the divisor is dd : "2-type", "3-type", "11-type", "6-type" or "7-type". If there are several such types, print the one that goes earlier in the given sequence. If a number belongs to the 22 -type, print on the second line the least number of the last bb -based digits that we will need to use to check the divisibility.

输入输出样例

  • 输入#1

    10 10
    

    输出#1

    2-type
    1
    
  • 输入#2

    2 3
    

    输出#2

    11-type
    

说明/提示

The divisibility rule for number 33 in binary notation looks as follows: "A number is divisible by 33 if and only if the sum of its digits that occupy the even places differs from the sum of digits that occupy the odd places, in a number that is divisible by 33 ". That's an 1111 -type rule. For example, 2110=10101221_{10}=10101_{2} . For it the sum of digits on odd positions equals 1+1+1=31+1+1=3 , an on even positions — 0+0=00+0=0 . The rule works and the number is divisible by 33 .

In some notations a number can fit into the 33 -type rule and the 1111 -type rule. In this case the correct answer is "3-type".

首页