涂色

蜀山区2021年信息学竞赛试题

题目描述 Description

小李喜欢写日记,为了有效区分每题记录的内容,他循环使用七种不同颜色的笔在日记本上记录每天发生的事情,循环次序分别为Red,Orange,Yellow,Green,Blue,Cyan,Purple,由于近期工作繁忙,小李漏了一段日子没写,但是他想先把今天的工作记录下来,之后找时间再补写之前的日记,先请你帮他编写一个程序,用于计算小李今天写日记应该用什么颜色的笔。

输入描述 Input Description

第一行是一个整数N
之后N行分别是N组测试数据,每组由最后一次记录使用笔的颜色和漏写的天数k。
输入严格区分大小写

输出描述 Output Description

N行,每行是第k+1天时应该选用的笔的颜色
输出严格区分大小写

样例输入 Sample Input

2 Red 2 Blue 16

样例输出 Sample Output

Green Red

数据范围及提示 Data Size & Hint

对于50%的数据,k<=7;
对于100%的数据,k<=1000。

代码:

#include
using namespace std;
int n,k;
string s,a[]={"","Red","Orange","Yellow","Green","Blue","Cyan","Purple"};

int main() {
    cin>>n;
    while(n--){
        cin>>s>>k;
        int p;
        for(int i=1;i<=7;i++){
            if(s==a[i]){
                p=i;
                break;
            }
        }
        p=(p+k+1)%7;
        if(p==0) p=7;
        cout<

你可能感兴趣的:(区赛市赛试题,算法)