0
点赞
收藏
分享

微信扫一扫

环形队伍

生活记录馆 2022-11-13 阅读 65

4717. 环形队伍

n 个小朋友围成一圈,按顺时针顺序依次编号为 1∼n

有 7 种颜色的帽子,每种颜色的帽子的数量都足够多。

7 种颜色不妨表示为 ​​R​​​、​​O​​​、​​Y​​​、​​G​​​、​​B​​​、​​I​​​、​​V​​。

现在,要给每个小朋友都发一个帽子,要求:

  • 每种颜色的帽子都至少有一个小朋友戴。
  • 任意四个相邻小朋友的帽子颜色都各不相同。

请你提供一种分发帽子的方案。

输入格式

共一行,包含一个整数 n

输出格式

输出一行长度为 n 的由代表颜色的字符组成的字符串,其中的第 ii 个字符表示第 ii 个小朋友分到的帽子的颜色。

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

数据范围

所有测试点满足 7≤n≤100

输入样例1:

8

输出样例1:

ROYGRBIV

输入样例2:

13

输出样例2:

ROYGBIVGBIVYG


难度:中等

时/空限制:1s / 256MB

总通过数:1230

总尝试数:3179

算法标签

挑战模式

#include<iostream>
using namespace std;
int n;
char a[7]={'R','O','Y','G','B','I','V'};
int main()
{
// cin>>n;
// for(int i=1;i<=n;i++)
// {
// if(i%7==1)cout<<'R';
// else if(i%7==2)cout<<'O';
// else if(i%7==3)cout<<'Y';
// else if(i%7==4)cout<<'G';
// else if(i%7==5)cout<<'B';
// else if(i%7==6)cout<<'I';
// else cout<<'V';
// }
cin>>n;
for(int i=1;i<=n-3;i++)
cout<<a[i%4];
for(int i=4;i<=6;i++)
cout<<a[i];
return 0;
}

技巧:相较于简单的一个个枚举  可以先用一个数组将所要循环使用的储存起来,然后通过下标来查找即可

举报

相关推荐

0 条评论