原题链接

题目描述

给定一个整数 nn,请你构造一个长度为 nn 的字符串,要求:

  1. 字符串中不含 a,b,c 以外的字符。

  2. 字符串中不含长度为 33 的回文子串。

  3. 字符串中 c 的数量尽可能少(最好没有)。

输入格式

一个整数 nn

输出格式

一个满足条件的字符串。

如果答案不唯一,则输出任意合理方案均可。

数据范围

1n2×1051≤n≤2×10^5

样例

输入样例1:

2

输出样例1:

aa

输入样例2:

3

输出样例2:

bba

思路

构造一个长度不超过 33​ 的回文子串,只用 aabb 构建,只要重复 abbaabba 或者 aabbaabb​ 即可。

代码

C++

#include <iostream>

using namespace std;

int main()
{
    string temp = "aabb";
    // string temp = 'abba'
    int n;
    cin >> n;
    for ( int i = 0; i < n; i++ ) cout << temp[i % 4];
}