hust 1602

来源:互联网 发布:windows 垃圾清理 编辑:程序博客网 时间:2024/05/21 22:35
D - D
Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu
Submit Status Practice HUST 1602

Description

This problem is quiet easy. 
Initially, there is a string A. 
  
Then we do the following process infinity times. 
 A := A +  “HUSTACM” + A 
  
For example, if a = “X”, then 
After 1 step, A will become  “XHUSTACMX”
After 2 steps, A will become  “XHUSTACMXHUSTACMXHUSTACMX”
  
Let A = “X”, Now I want to know the characters from L to R of the final string.

Input

Multiple test cases, in each test case, there are only one line containing two numbers L and R. 
1 <= L <= R <= 10^12 
R-L <= 100

Output

For each test case, you should output exactly one line which containing the  substring.

Sample Input

5 10

Sample Output

TACMXH
#include <iostream>#include<cstdio>#include<string>#include<cmath>#include<vector>#include<iostream>#include<stack>#include<map>#include<algorithm>using namespace std;int main(){   long long int len,r,i,j,l;   char a[9]={'X','X','H','U','S','T','A','C','M'};   while(cin>>l>>r)   {       len=r-l+1;       l=l%8;       if(l==0)l=8;       for(i=1;i<=len;i++){        cout<<a[l];        l=l%8+1;       }       cout<<endl;   }   return 0;}

。。。。至今下面的也没法ac。。。。。。。。。。。。。。。。。。。。。
#include <iostream>#include<cstdio>#include<string>#include<cmath>#include<vector>#include<iostream>#include<stack>#include<map>#include<algorithm>using namespace std;int main(){   int l,r,i,j,k;   char a[9]={'X','H','U','S','T','A','C','M'};   while(cin>>l>>r)   {           if(l%8==0){                cout<<'M';           for(i=1;i<=(r-l);i++){               if(i%8==0)cout<<a[7];               else cout<<a[(i%8)-1];           }           }           else{               if(r<=8){                for(i=l%8;i<=r;i++){               cout<<a[i-1];}               }               else{              for(i=l%8;i<=8;i++){               cout<<a[i-1];}               for(i=1;i<=(r-l-(8-(l%8)));i++){                   if(i%8==0)cout<<a[7];              else{ cout<<a[(i%8)-1];}           }              }           }       cout<<endl;   }   return 0;}


0 0
原创粉丝点击