ADV04J

ADV04J

#include<iostream>
using namespace std;

int main()
{
int t;
cin>>t;
long long int a;
while(t--)
{
cin>>a;
int res=0;
while(a>0)
{
if(a==2)
{ res+=2         ;
break;
}

if(a%2==0)
a/=2;
else
a = (a/2)+1;
res++;
}
cout<<res<<endl;
}
return 0;
}


ADDREV

ADDREV

#include<iostream>

int reverse(int a)
{
       int b[10000];int j=0;
    int term=0,rev=0;
    int multi;
    while(a>0)
    {
             
              b[j]=a%10;
              j++;
              a=a/10;
              }
              for(int x=j;x>0;x--)
              {
                  multi=1;
                  for(int y=0;y<(x-1);y++)
                  multi=multi*10;
                  term=b[j-x]*multi;   
                      rev=rev+term;
                      }
    return rev;
    }


using namespace std;

int main()

{
int a,b,c;
int rev1,rev2,rev3,sum;
cin>>a;
for(int i=0;i<a;i++)
{
cin>>b>>c;
rev1=reverse(b);
rev2=reverse(c);
sum=rev1+rev2;
rev3=reverse(sum);
cout<<rev3<<endl;
}

return 0;

}

ACPC11B

ACPC11B

#include<iostream>
using namespace std;
void sort(long long int arr[],int a)
{
    long long int temp;
    for(int i=0;i<a;i++)
        for(int j=1;j<a-i;j++)
        {
            if(arr[j]>arr[j-1])
            {
                temp =arr[j];
                arr[j]=arr[j-1];
                arr[j-1]=temp;
            }
        }
}

int main()
{
   
    int t;
    cin>>t;
    long long int a,b;
    while(t--)
    {
       
        cin>>a;
        long long int arra[a];
        for(int i=0;i<a;i++)
        {
            cin>>arra[i];
        }   
        cin>>b;
        long long int arrb[b];
        for(int i=0;i<b;i++)
        {
            cin>>arrb[i];
        }   
        sort(arra,a);
        sort(arrb,b);
        long long int min=1000000;       
        int ct1=0,ct2=0;
        while((ct1<a)&&(ct2<b))
        {
           
           
            while((arra[ct1]>=arrb[ct2])&&(ct1<a))
                {
               
                    if((arra[ct1]-arrb[ct2])<min){min = (arra[ct1]-arrb[ct2]);}
                    ct1++;
                }
            while((arra[ct1]<arrb[ct2])&&(ct2<b))
                {
               
                    if((arrb[ct2]-arra[ct1])<min){min = (arrb[ct2]-arra[ct1]);}
                    ct2++;
                }
               
           
        }
   
        cout<<min<<endl;
    }

return 0;
}

ACPC10D

ACPC10D

#include<iostream>
#include<cmath>
using namespace std;

int min(int a,int b)
{
    if(a<b)
        return a;
    else
        return b;
       
}


int main()
{
    int t;cin>>t;int count=0;
    while(t!=0)
    {
        count++;
        int arr[t][3];
        for(int j=0;j<t;j++)
            for(int x=0;x<3;x++)
                cin>>arr[j][x];   

    arr[0][2]+=arr[0][1];
arr[1][0]+=arr[0][1];
arr[1][1]+=min(arr[0][1],min(arr[1][0],arr[0][2]));
arr[1][2]+=min(arr[0][1],min(arr[1][1],arr[0][2]));
       
         for(int j=2;j<t;j++)
        {
            arr[j][0] = arr[j][0] + min(arr[j-1][0],arr[j-1][1]);
            arr[j][1] = arr[j][1] + min(arr[j][0],min(arr[j-1][0],min(arr[j-1][1],arr[j-1][2])));
            arr[j][2] = arr[j][2] + min(arr[j][1],min(arr[j-1][1],arr[j-1][2]));
             }
            int lm = arr[t-1][1];
        cout<<count<<". "<<lm<<endl;       
        cin>>t;
    }

return 0;
}



ACPC10A

ACPC10A

#include<iostream>
using namespace std;

int main()
{
    long int a,b,c;
    cin>>a>>b>>c;
   
    while((a!=0)||(b!=0)||(c!=0))
    {
    if((b-a)==(c-b))
    cout<<"AP "<<(c+(b-a))<<endl;
    else if((b/a)==(c/b))
    cout<<"GP "<<(c*(b/a))<<endl;                            
                                 cin>>a>>b>>c;
                                 }
    return 0;
   
   
    }

ABSYS

ABSYS

#include<iostream>
#include<cstring>
#include<cstdlib>

using namespace std;

int main()
{
    int t;
    char str1[100],str2[100],opr[2],opr1[2],str5[100];
   
    cin>>t;
   
    for(int i=0;i<t;i++)
    {
    cin>>str1>>opr>>str2>>opr1>>str5;
   
        if((strchr(str1,'m'))!=NULL)
      
        {
                           int y=atoi(str2);
                           int z=atoi(str5);
                           int l=z-y;
                         
                         cout<<l<<" + "<<y<<" = "<<z<<endl;
                                 }
           else if ((strchr(str2,'m'))!=NULL)
           {
            
                           int y=atoi(str1);
                           int z=atoi(str5);
                           int l=z-y;
                          cout<<y<<" + "<<l<<" = "<<z<<endl;
               
          }
            else if ((strchr(str5,'m'))!=NULL)
            {
                           int y=atoi(str1);
                           int z=atoi(str2);
                           int l=z+y;
                       
                           cout<<y<<" + "<<z<<" = "<<l<<endl;
                 }
            }
    return 0;
   
    }

ABA12D

ABA12D

#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;

int main()
{
 int arr[]={2, 4, 9, 16, 25, 64, 289, 729, 1681, 2401, 3481, 4096, 5041, 7921, 10201, 15625, 17161, 27889, 28561, 29929, 65536, 83521, 85849, 146689, 262144, 279841, 458329, 491401, 531441, 552049, 579121, 597529, 683929, 703921, 707281, 734449, 829921,1190281 };  

 cin>>t;
 int a,b;
 while(t--)
 {
         cin>>a>>b;
         int a1 = 0,a2=0;
         while(arr[a1++]<a);
         while(arr[a2++]<b);
         cout<<a2-a1<<endl; 
 }  
 return 0;
}