标题:猜字母
把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。
接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。
得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。
答案是一个小写字母,请通过浏览器提交答案。不要填写任何多余的内容。
include <iostream>
using namespace std;
int main(){
string s="abcdefghijklmnopqrs";
string ss;
for(int i=0;i<106;i++){
ss+=s; //拼接106次
}
while(ss.size()>1){ //判断循环结束
for(int i=0;i<ss.size();i++){
ss.replace(i,1,""); //replace()函数 的使用
}
}
cout<<ss;
return 0;
}
#include<bits/stdc++.h>
#include<string>
using namespace std;
int main()
{
char s[20] = "abcdefghijklmnopqrs";
char str[2015];
int k = 0;
for(int i = 0; i < 106; i++){
for(int j = 0; j < 19; j++){
str[k++] = s[j];
}
}
while(strlen(str) != 1){
k = 0;
for(int i = 0; i < strlen(str); i+=2){
str[i] = '0';
}
for(int i = 0; i < strlen(str); i++){
if (str[i] != '0')
str[k++] = str[i];
}
str[k] = 0;
}
cout << str;
return 0;
}