本人太菜,只有RE:(
题目描述
奶牛正在试验秘密代码,并设计了一种方法来创建一个无限长的字符串作为其代码的一部分使用。 给定一个字符串,让后面的字符旋转一次(每一次正确的旋转,最后一个字符都会成为新的第一个字符)。也就是说,给定一个初始字符串,之后的每一步都会增加当前字符串的长度。 给定初始字符串和索引,请帮助奶牛计算无限字符串中位置N的字符。
输入格式
第一行一个字符串
第二行一个整数表示N
输出格式
请输出无限字符串中第N位的字符
样例输入
COW
8
样例输出
C
问题提示
对于30%的数据,N<=10000
对于50%的数据,N<=10^9
对于100%的数据,N<=10^18 字符串长度最大为30
本蒟蒻的代码附上
#include<bits/stdc++.h>
using namespace std;
string a,temp;
int main(){
cin>>a;
int n;
cin>>n;
int y=a.size();
while(y<n){
temp=a;
a[y]=a[y-1];
for(int i=0;i<y-1;i++){
a[i+y+1]=temp[i];
cout<<i<<endl;
}
y*=2;
}
cout<<a[n-1];
}```