View Code of Problem 99

#include<bits/stdc++.h>
using namespace std;

int main()
{
  string s,num;
  int i,j,flag,bei[3]={0};
  while(getline(cin,s))
  {
    if(s=="0") break;
    flag=0;num="";j=-1;
    for(i=0;i<s.size();++i)
    {
      if(isdigit(s[i])&&i!=s.size()-1)
        num+=s[i];
      else
      {num+=s[i];flag=1;++j;}
      if(flag)
      {bei[j]=stoi(num);num.clear();flag=0;}
    }
    if(j==0)
    {
      for(i=1;i<=bei[0];++i)
      {
        if(i==1)  cout<<i;
        else  cout<<" "<<i;
      }
      bei[0]=0;
    }
    else if(j==1)
    {
      if(bei[0]<bei[1])
      {
        for(i=bei[0];i<=bei[1];++i)
        {
          if(i==bei[0])  cout<<i;
          else  cout<<" "<<i;
        }
      }
      else
      {
        for(i=bei[0];i>=bei[1];--i)
        {
          if(i==bei[0])  cout<<i;
          else  cout<<" "<<i;
        }
      }
      bei[0]=0;bei[1]=0;
    }
    else
    {
      if(bei[0]<bei[1])
      {
        for(i=bei[0];i<=bei[1];i+=bei[2]+1)
        {
          if(i==bei[0])  cout<<i;
          else  cout<<" "<<i;
        }
      }
      else
      {
        for(i=bei[0];i>=bei[1];i-=bei[2]+1)
        {
          if(i==bei[0])  cout<<i;
          else  cout<<" "<<i;
        }
      }
      bei[0]=0;bei[1]=0;bei[2]=0;
    }
    cout<<endl;
  }
}

Double click to view unformatted code.


Back to problem 99