problem is http://www.spoj.pl/problems/ELEVTRBL/
and my solution is give wrong answer on spoj . Plz help me to find in which
case my solution give wrong answer.


*
#include<iostream>
**
#include<stdio.h>
using namespace std;
int main()
{
    long long int f,s,u,d,g,c,p;

    scanf("%lld%lld%lld%lld%lld",&f,&s,&g,&u,&d);

    p=0;



    if(s==g)
    printf("0\n");
    if(s>g&&u==0&&d!=0)
    {
        int temp=s-g;
        if((temp/d)*d==temp)
        {
                p=temp/d;
                printf("%lld\n",p);

        }
        else
        printf("use the stairs\n");

    }
    else if(s>g)
    {
           int temp =s;
           s=g;
           g=temp;

          // cout<<"2"<<endl;
           }
           //cout<<"1"<<endl;
           c=s;
    if(s<g)
    {     while(1)
          {
              int temp=g-c;
              int q;
              if(u==0)
              {
                      if(c==g)
                      {
                              printf("0\n");
                              break;
                      }
                      else
                     {
                          printf("use the stairs\n");
                            break;
                            }
              }
              if(temp/u==(temp/u)*u)
              {
                                    q=temp/u;

                                    }
                                    else
                                    q=temp/u+1;

              if((c+q*u)<=f)
              {  // cout<<"1"<<endl;
                               p=p+q;
                               c=(q)*u+c;
                               //cout<<c<<endl;
                               }
              else
              {//cout<<"2"<<endl;
                   p=p+temp/u;
                   c=(temp/u)*u+c;
                   }
              if(c==g)
              {
                   //   cout<<"3"<<endl;
                      printf("%lld",p);
                      break;
              }
              if(u==d||d==0||((u%d==0)&&d!=0)||(d%u==0&&u!=0))
              {

              printf("use the stairs\n");
                            break;}
              if(c-d>=0)
              {      //   cout<<"4"<<endl;
                        c=c-d;
                        p+=1;
                       // cout<<c<<endl;
                        }
                        else
                        {
                         //   cout<<"5"<<endl;
                            printf("use the stairs\n");
                            break;
                            }
          }
     }

}
Anshul Agarwal
Nit Allahabad
Computer Science**
*

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to