C,C++/JAVA/BASH/ASM ARENA

वह प्रदीप जो दीख रहा है झिलमिल दूर नही है थक कर बैठ गये क्या भाई मन्जिल दूर नही है चिन्गारी बन गयी लहू की बून्द गिरी जो पग से चमक रहे पीछे मुड देखो चरण-चिनह जगमग से बाकी होश तभी तक, जब तक जलता तूर नही है थक कर बैठ गये क्या भाई मन्जिल दूर नही है अपनी हड्डी की मशाल से हृदय चीरते तम का, सारी रात चले तुम दुख झेलते कुलिश का। एक खेय है शेष, किसी विध पार उसे कर जाओ; वह देखो, उस पार चमकता है मन्दिर प्रियतम का। आकर इतना पास फिरे, वह सच्चा शूर नहीं है; थककर बैठ गये क्या भाई! मंज़िल दूर नहीं है। दिशा दीप्त हो उठी प्राप्त कर पुण्य-प्रकाश तुम्हारा, लिखा जा चुका अनल-अक्षरों में इतिहास तुम्हारा। जिस मिट्टी ने लहू पिया, वह फूल खिलाएगी ही, अम्बर पर घन बन छाएगा ही उच्छ्वास तुम्हारा। और अधिक ले जाँच, देवता इतन क्रूर नहीं है। थककर बैठ गये क्या भाई! मंज़िल दूर नहीं है।

SPOJ 5450. Tiles of Tetris, Not! November 30, 2009

Filed under: ACM ICPC,ANARC,C,C++ Programs,Coding,SPOJ — whoami @ 17:15
Tags: , ,

SPOJ 5450. Tiles of Tetris, Not!
Problem code: ANARC09B

--AC--
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

long long int gcd(long long int n1,long long int n2)
{
  if(n1==0) return n2;
  else if(n2==0) return n1;

  if(n1>n2)
    return gcd(n1%n2,n2);
  else
    return gcd(n1,n2%n1);

return 0;

}

int main()
{
  long long int i,j,k,lcm;
  long long int W,H;
  
  while(1)
  {
   scanf("%lld%lld",&W,&H);
   if(W==0&&H==0) break;
  
   if(W==H) 
       printf("1\n");
   else if(W>H)
   {
        if(W%H==0) 
           printf("%lld\n",W/H);
        else
          {
           lcm=(W*H)/gcd(W,H);
           printf("%lld\n",lcm);
          }
    }
    else if(H>W)
    {
        if(H%W==0)
          printf("%lld\n",H/W);
        else
          {
            lcm=(W*H)/gcd(W,H);
            printf("%lld\n",lcm);
          }
     }
   
   }

return 0;
}

 

SPOJ 5447. Probability One November 30, 2009

Filed under: ANARC,C,C++ Programs,Coding,SPOJ — whoami @ 11:01
Tags: , ,

SPOJ 5447. Probability One
Problem code: ANARC09E

--AC--
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{
  int i,j;
  int k,B,Q;
  k=0;
  while(1)
  {
    
    scanf("%d",&B);
    if(B==0) break;
    if(B%2==0)
      printf("%d. even %d\n",++k,B/2);
    else
      printf("%d. odd %d\n",++k,(B-1)/2);
  }
return 0;
}

 

TJU 2199. A+B Problem November 29, 2009

Filed under: C,C++ Programs,Coding,TJU,TLE — whoami @ 20:22
Tags: , ,

TJU 2199. A+B Problem
<em>–TLE–

----its giving TLE----
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
#define FOR(x,y,z) for(x=y;x<=z;x++)
int main()
{
  int n,a[1002],b[1002];
  int i,j,k,l,max,tmp,flag;

  while(1)
  {
    scanf("%d",&n);
    if(n==0) break;
    for(i=1;i<=n;i++)
     scanf("%d",&a[i]);

    max=-1;
    FOR(i,1,n)
    {
      flag=0;
      FOR(j,1,n)
      {
        FOR(k,1,n)
        {
         if(i!=j&&i!=k&&j!=k&&a[i]==(a[j]+a[k]))
             {tmp=a[i];flag=1;goto down;}
         }
        }
       down:
       if(tmp>max&&flag==1)
        max=tmp;
      }
    
        printf("%d\n",max);
   }

return 0;
}

 

TJU 1389. Forests November 28, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 19:43
Tags: ,

TJU 1389. Forests


#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;

int main()
{
  int i,j,k,count;
  int a[201][201],T,P,flag[201];

  scanf("%d%d",&P,&T);
  for(i=0;i<201;i++)
  memset(a,0,sizeof(a[i]));
  memset(flag,0,sizeof(flag));
  while(1)
  {
    if(scanf("%d%d",&i,&j)==-1) break;
     a[i][j]=1;
  }
   count=0;
  for(i=1;i<=P;i++)
  {
     if(flag[i]==1) 
         continue;
     ++count;
     for(j=i;j<=P;j++)
     {
       for(k=1;k<=T;k++)
        if(a[i][k]!=a[j][k])
          break;
       if(k==T+1)
         flag[j]=1;
     }
   
   }
      printf("%d\n",count);

return 0;
}

 

TJU 1643. Golf November 28, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 17:13
Tags: ,

TJU 1643. Golf

#include<stdio.h>
#include<iostream>
using namespace std;

int main()
{
  int i=0,j,k;
  int p,s;
  
  while(1)
  {
    scanf("%d%d",&p,&s);
    if(p==0) break;
    
    printf("Hole #%d\n",++i);
    if(s==1)
       printf("Hole-in-one.\n");
    else if(s==p)
       printf("Par.\n");
    else if(s==p-1)
       printf("Birdie.\n");
    else if(s==p+1)
       printf("Bogey.\n");
    else if(s==p-2)
       printf("Eagle.\n");
    else if(s==p-3)
       printf("Double Eagle.\n");
    else if(s==p+2)
       printf("Double Bogey.\n");
    else 
       printf("Double Bogey.\n");
    printf("\n");
   }

return 0;
}

 

TJU 3232. kangaroo November 28, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 16:10
Tags: ,

TJU 3232. kangaroo

#include<stdio.h>
#include<iostream>
using namespace std;

int main()
{
  int diff1,diff2;
  int a,b,c,res;
  scanf("%d%d%d",&a,&b,&c);
  diff1=b-a;
  diff2=c-b;
  if(diff1>diff2)
    printf("%d\n",(b-a-1));
  else
    printf("%d\n",(c-b-1));

return 0;
}

 

How to use binary_search() November 28, 2009

Filed under: C,C++ Programs,SEARCHING — whoami @ 12:43
Tags: ,

How to use binary_search()

#include <algorithm>
#include <iostream>
#include <utility>
using namespace std;
#define N 20
int a[N];
int main(){
    sort(a,a+N);
    if(binary_search(a,a+N,1)){
        cout<<"OK";
    }
}

 

How to use sort() November 28, 2009

Filed under: C,C++ Programs,SORTING — whoami @ 12:39
Tags: ,

How to use sort()

#include <algorithm>
using namespace std;
#define N 20
int a[N];
bool cmp(int x,int y){
    return x<y;
}
int main(){
    sort(a,a+N,cmp);
    return 0;
}

 

TJU 2391. Ancient Cipher November 28, 2009

Filed under: ACM ICPC,C,C++ Programs,Coding,TJU — whoami @ 12:00
Tags: ,

TJU 2391. Ancient Cipher

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{
  int i,j,k;
  char s1[101],s2[101];
  int a[26],b[26];
  int n,l,temp,flag;
  while(1)
  {
  if(scanf("%s",s1)==-1) break;
  scanf("%s",s2);
  memset(a,0,sizeof(a));
  memset(b,0,sizeof(b));

  for(i=0;s1[i]!='\0';i++)
  {
     a[s1[i]-'A']++;
     b[s2[i]-'A']++;
  }

  for(i=0;i<26;i++)
  {
    for(j=i;j<26;j++)
    {
      if(a[i]>a[j])
      {
        temp=a[i];a[i]=a[j];a[j]=temp;
      }
      if(b[i]>b[j])
      {
        temp=b[i];b[i]=b[j];b[j]=temp;
      }
    }
  }

    flag=1;
   for(i=0;i<26;i++)
   {
    if(a[i]!=b[i])
    {
     flag=0;
     break;
    }
   }
    if(flag==1) printf("YES\n");
    else printf("NO\n");
  }

return 0;
}
     

 

TJU 2674. Java vs C++ November 28, 2009

Filed under: ACM ICPC,C,C++ Programs,Coding,SPOJ,TJU — whoami @ 06:45
Tags: , ,

2674. Java vs C++
1163. Java vs C ++ Problem code: JAVAC

--AC--
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{

  int i,j,k,flag;
  char s[201],c,res[201];
  while(1)
  {
    if(scanf("%s",s)==-1) break;;
    for(i=0;i<201;i++)
     res[i]='\0'; 
    if(strchr(s,'_'))
    {
      flag=0;
      for(i=0;s[i]!='\0';i++)
       if(s[i]>='A'&&s[i]<='Z')
       {
         flag=1;
         break;
       }
      if(flag==1||s[0]=='_'||s[strlen(s)-1]=='_'||s[0]>'A'&&s[0]<='Z'||strstr(s,"__")) 
         printf("Error!\n");
      else
        {
          j=0;
          for(i=0;s[i]!='\0';)
          {
            if(s[i]=='_')
            {
             res[j++]=s[i+1]-32;
             i=i+2;
            }
            else
            {
             res[j++]=s[i];
             i=i+1;
            }
          }
         res[j]='\0';

       printf("%s\n",res); 
      }
  
   }
    else 
    {
     if(s[0]>='A'&&s[0]<='Z')
       printf("Error!\n");
     else
     {
     j=0;
     for(i=0;s[i]!='\0';)
     {
      if(s[i]>='A'&&s[i]<='Z')
      {
        res[j++]='_';
        res[j++]=s[i]+32;
        i++;
      }
     else
      {
        res[j++]=s[i];
        i++;
      }
    }
   
   printf("%s\n",res);
   }
   }   
                 
  }

return 0;
}         

 

TJU 1357. Interpreter November 27, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 19:54
Tags: ,

TJU 1357. Interpreter


#include<stdio.h>
#include<stdlib.h>

int main()
{
  int i,j,k;
  static int reg[11],addr[1001];
  int a,b,c,ip;
  i=0;
  while(scanf("%d",&addr[i])!=-1) i++;
  j=1;ip=0;
  while(1)
  {
    a=addr[ip]/100;
    b=(addr[ip]/10)%10;
    c=addr[ip]%10;
    ip++;
    if(a==1)
        break;
    else if(a==2)
          reg[b]=c;
    else if(a==3)
          reg[b]=(reg[b]+c)%1000;
    else if(a==4)
          reg[b]=(reg[b]*c)%1000;
    else if(a==5)
          reg[b]=reg[c];
    else if(a==6)
          reg[b]=(reg[b]+reg[c])%1000;
    else if(a==7)
          reg[b]=(reg[b]*reg[c])%1000;
    else if(a==8)
          reg[b]=addr[reg[c]];
    else if(a==9)
          addr[reg[c]]=reg[b];
    else if(a==0&&reg[c]!=0)
          ip=reg[b];
    j++;
   }
    printf("%d\n",j);


return 0;
}

 

TJU 2698. Goldbach’s conjecture November 27, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 17:35
Tags: ,

TJU 2698. Goldbach’s conjecture
[it is almost same as TJU 1171]

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>



int compute(int n)
{
  int i,j,k,flag=0;
  for(j=2;j<=sqrt(n);j++)
    {
      if(n%j==0)
       {
        flag=1;
        break;
       }
      else
        flag=0;
     }

    if(flag==0)
      return 1;
    else
      return 0;    

return 0;
}

int main()
{
  int i,j,k,flg,count;
  int n;

  while(1)
  {
    scanf("%d",&n);
    count=0;
    if(n==0) break;
    flg=0;
     for(i=3;i<=n/2;i=i+2)
     {

       if(compute(i)&&compute(n-i)){
       ++count;
       }

     }
     printf("%d\n",count);

   }

return 0;
}


 

TJU 2843. Diamonds November 27, 2009

Filed under: Algo & Data Structure,C,C++ Programs,TJU — whoami @ 11:51
Tags: ,

TJU 2843. Diamonds

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{
  int t,n,i,j,k,l,big,max;
  int a[10002][4];

  scanf("%d",&t);
  while(t--)
  {
    scanf("%d",&n);
    for(i=1;i<=n;i++)
     for(j=1;j<=3;j++)
      scanf("%d",&a[i][j]);
    max=0;
    for(i=2;i<=n;i++)
    {
      for(j=1;j<=3;j++)
      {
        if(j==1) {k=2;l=3;}
        else if(j==2){k=1;l=3;}
        else if(j==3){k=1;l=2;}
        
        if(a[i-1][k]>a[i-1][l])
         big=a[i-1][k];
        else 
         big=a[i-1][l];

        a[i][j]=a[i][j]+big;
        if(a[i][j]>max)
          max=a[i][j];
        }
      }
    printf("%d\n",max);
   }
return 0;
}

 

TJU 1233. Number Steps November 27, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 09:24
Tags: ,

TJU 1233. Number Steps

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{
  int N,x,y;
  

  scanf("%d",&N);
  while(N--)
  {
    scanf("%d%d",&x,&y);
    
    if(x%2==0&&y%2==0&&abs(x-y)==2||x%2==0&&y%2==0&&x==y)
      printf("%d\n",x+y);
    else if(x%2!=0&&y%2!=0&&abs(x-y)==2||x%2!=0&&y%2!=0&&x==y)
      printf("%d\n",x+y-1);
    else 
      printf("No Number\n");
 }

return 0;
}

 

TJU 2841. Bitwise Reverse November 26, 2009

Filed under: C,C++ Programs,Coding,TJU — whoami @ 13:13
Tags: ,

TJU 2841. Bitwise Reverse

[took 30 Mins to solve]

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int main()
{
  int i,j,k;
  char s[1000002];
  int n,rem,res;
  int new_num,n_digit;

  while(1)
  {
    scanf("%d",&n);
    if(n==0) break;
    
    for(i=1;i<=20;i++)
    {
       if((pow(2,i-1))>n) 
       break;
    }
    n_digit=i-1;
   
   new_num=0;
   while(n>0)
   {
     rem=n%2;
     n=n/2;
     new_num=new_num+rem*pow(2,n_digit-1);
     n_digit--;
   }
   printf("%d\n",new_num);
  
  }

return 0;
}

 

 
Follow

Get every new post delivered to your Inbox.