cool cooler coolest

Description

ctw收到了一个粉丝送来的手环,手环是由三种ctw最喜欢的颜色的晶石串成的。

ctw认为这很“cool”,如果手环上的任意两个相邻的晶石颜色都不同就更“cool”了,当然如果手环上任意三个相邻的晶石颜色都各不相同,那就是最“cool”的了。

三种颜色分别用数字123表示,一串仅包含字符123的字符串ss表示一个手环。

例如 123 表示一个由 123 三种颜色的晶石依次串成的手环。显然,ctw会认为这样的手环是最“cool”的,程序输出 coolest

同理,对于 1212 应该输出 cooler11111 输出 cool

请根据ss判断ctw对该手环的评价。

Input

第一行包括一个整数TT,下面是TT组数据。

每组数据一行包括一个字符串ss

1 \le T \le 10001≤T≤1000

3 \le |s| \le 10003≤∣s∣≤1000

Output

每组数据一行,根据题意输出 coolcooler 或 coolest

Sample Input 1 

4
123
1212
11111
12123

Sample Output 1

coolest
cooler
cool
cooler

Hint

手环是环形的,也就是说 123231321 表示的是同样的手环。

题解:送温暖

//
//  main.cpp
//
//
//  Created by Edwin on 2018-12-23.
//  Copyright © 2018 Edwin. All rights reserved.
//
#include <bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define INF 0×7ffffff
#define EPS 1e-8
#define maxn 1000000+10
#define PI acos(-1.0)
#define pb push_back
using namespace std;

int main()
{
    int test,n,m;
    cin>>test;
    getchar();
    while(test--)
    {
        string a;
        getline(cin,a);
        a.pb(a[0]);
        a.pb(a[1]);
        int flag2,flag3;
        flag2=flag3=1;
        for(int i=0;i<a.length()-2&&(flag2||flag3);i++)
        {
            //cout<<a[i]<<" "<<a[i+1]<<" "<<a[i+2]<<endl;
            if(a[i]==a[i+1]) flag2=0;
            if(a[i]==a[i+1]||a[i]==a[i+2]||a[i+1]==a[i+2]) flag3=0;
        }
        if(flag3) cout<<"coolest"<<endl;
        else if(flag2) cout<<"cooler"<<endl;
        else cout<<"cool"<<endl;
    }
    return 0;
}

 

发表评论,支持MarkDown语法