Codeforces #282 div2 ABC(二)

2015-01-24 05:48:37 · 作者: · 浏览: 14
ation \ has.

Input

In the only line of the input two space-separated integers a and b (0?≤?a,?b?≤?109) are given.

Output

If there is an infinite number of answers to our equation, print "infinity" (without the quotes). Otherwise print the number of solutions of the Modular Equation \.

Sample test(s) Input
21 5
Output
2
Input
9435152 272
Output
282
Input
10 10
Output
infinity
Note

In the first sample the answers of the Modular Equation are 8 and 16 since \


#include 
    
     
#include 
     
       #include 
      
        #include 
       
         #include 
        
          #include 
         
           #define N 10000009 #define ll __int64 using namespace std; //a=b+kx;因为数据比较大10^9,所有不能直接暴力,稍微转化一下
         
        
       
      
     
    
int main()
{
    ll a,b;
    while(~scanf("%I64d%I64d",&a,&b))
    {
        ll c=a-b;
        if(a==b)
        {
            printf("infinity\n");
            continue;
        }
        if(a
    
     b)
                {
                    ans++;
                }
                if( i*i
     
      b) ) ans++; } } cout<
      
       
C. Treasure time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output

Malek has recently found a treasure map. While he was looking for a treasure he found a locked door. There was a string s written on the door consisting of characters '(', ')' and '#'. Below there was a manual on how to open the door. After spending a long time Malek managed to decode the manual and found out that the goal is to replace each '#' with one or more ')' characters so that the final string becomes beautiful.

Below there was also written that a string is called beautiful if for each i (1?≤?i?≤?|s|) there are no more ')' characters than '(' characters among the first i characters of s and also the total number of '(' characters is equal to the total number of ')' characters.

Help Malek open the door by telling him for each '#' character how many ')' characters he must replace it with.

Input

The first line of the input contains a string s (1?≤?|s|?≤?105). Each character of this string is one of the characters '(', ')' or '#'. It is guaranteed that s contains at least one '#' character.

Output

If there is no way of replacing '#' characters which leads to a beautiful string print ?-?1. Otherwise for each character '#' print a separate line containing a positive integer, the number of ')' characters this character must be replaced with.

If there are several possible answers, you may output any of them.

Sample test(s) Input
(((#)((#)
Output
1
2
Input
()((#((#(#()
Output
2
2
1
Input
#
Output
-1
Input
(#)
Output
-1
Note

|s| denotes the length of the string s.


#include 
        
         
#include 
         
           #include 
          
            #include 
           
             #include 
            
              #include 
             
               #define N 100009 using namespace std; char str[N]; vector
              
                t; int main() { while(~scanf("%s",str)) { int a=0,b=0,c=0; int num=0; int len=strlen(str); for(int i=0;i