Don't like ads? PRO users don't see any ads ;-)
Guest

10038 - Jolly Jumpers

By: a guest on May 8th, 2012  |  syntax: C++  |  size: 1.23 KB  |  hits: 15  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #include<stdio.h>
  2. int main ()
  3. {
  4.     long int num[3000], test,i,j,dif, dif1, dif2, mark;
  5.     while(scanf("%ld", &test)!=EOF)
  6.     {
  7.         for(i=0;i<test; i++)
  8.         scanf("%ld", &num[i]);
  9.         if (test==1)
  10.         {
  11.             printf("Jolly\n");
  12.             continue;
  13.         }
  14.         if(num[1]>num[0])
  15.         dif1=num[1]-num[0];
  16.         else
  17.         dif1=num[0]-num[1];
  18.         if ((dif1!=(test-1))&&(dif1!=1))
  19.         {
  20.             printf("Not jolly\n");
  21.             continue;
  22.         }
  23.         if(dif1==1)
  24.         mark=1;
  25.         else mark=0;
  26.         for(i=2; i<test; i++)
  27.         {
  28.             if(num[i]>num[i-1])
  29.             dif2=num[i]-num[i-1];
  30.             else
  31.             dif2=num[i-1]-num[i];
  32.             if (dif1>dif2)
  33.             dif=dif1-dif2;
  34.             else
  35.             dif=dif2-dif1;
  36.             if(dif==1)
  37.             {
  38.                 dif1=dif2;
  39.                 continue;
  40.             }
  41.             else
  42.             {
  43.                 printf("Not jolly\n");
  44.                 break;
  45.             }
  46.  
  47.         }
  48.         if((dif==1 && mark==1 && dif1==(test-1))||(dif==1 && mark==0 && dif1==1))
  49.         printf("Jolly\n");
  50.         else
  51.         printf("Not jolly\n");
  52.     }
  53.     return 0;
  54. }