字符串:纸片人的挑战
问题:
第一排:“A”
第二排:“ABA”
第三排:“ABACABA”
第四排: “ABACABADABACABA”
1.输入一个数n,要求输出第n排的数据
方案:
1.对于Q1,经过观察可以发现每行字符串都是由2个上一行字符串外加第n个字母拼接而成,故可用for循环累加拼接,
需要注意的是,每层循环都要将中间的字母初始化,否则拼接后会错位
源码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
int i;
char c;
string str = "A";
cin >> n;
if (n == 1)
cout << "A";
else
{
for (i = 2; i <= n; i++)
{
c = 'A';
c = c + i - 1;
str = str + c + str;
}
cout << str << endl;
}
}