NC223199. C随机字符串生成器
描述
小 W 要生成一个小写字符组成的字符串,现有两个随机字符串生成器,如下:
现在给你 n 个长度恰好为 1000 的字符串,每一个都是两个随机生成器中的一个生成的,并且保证每一个字符串从哪个生成器中生成是均匀独立随机的,请你帮小 W 分辨出每一个字符串是由哪个生成器中生成的。
输入描述
第一行一个整数 n(n=2000),然后 n 行,每行一个字符串,保证长度为 1000,表示你要判断的字符串。
输出描述
n 行,每行一个字符串 FIRST 或 SECOND,表示是从哪个生成器中生成出来的
示例1
输入:
8 gpsooxsbzinyaifcqktxogbhhfcama srtggipzveyxosmxwrhuwirfnponmr mfvykbxcezejxuynjezavaxzcunocs ltrmsbldgoovvfuhiyvlkigsiaozzy evvlpwdukbmoozyqfzjnlvgpxuqceu tkpadbbqrsnycbipvnrxhefvqidwlg aitksqtchllvzeqblgjpaemyjoihzv bnwfvnalpdteyobcqusoahzcjvpdiy
输出:
SECOND FIRST FIRST FIRST FIRST SECOND SECOND SECOND
说明:
注意样例输入并不符合题意,只是为了让你理解输入输出格式,它也不会出现在数据中。C++ 解法, 执行用时: 9ms, 内存消耗: 312K, 提交时间: 2021-10-16 20:13:21
#include<bits/stdc++.h> using namespace std; const int N=1010; char s[N]; int t[26]; int main() { int T;scanf("%d",&T); while(T--) { memset(t,0,sizeof t); scanf("%s",s); int l=strlen(s); for(int i=0;i<l;i++)t[s[i]-'a']++; sort(t,t+26); if(t[25]-t[0]>12)puts("FIRST"); else puts("SECOND"); } }