hrbust 訓練賽 1109
阿新 • • 發佈:2017-10-22
set 字符 bool pan 訓練 pre turn *** style
鏈接:
http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1109
解析思路:
兩兩組成一個字符串再比較一下
代碼:
#include<bits/stdc++.h> using namespace std; struct str { char name[10]; }s[205]; bool cmp(str a,str b) { if(a.name[0] != b.name[0]) { return a.name[0] < b.name[0]; }else { return a.name[1] < b.name[1]; } } int main() { int t; while(~scanf("%d",&t)) { if(t==0) break; getchar(); char a[205]; while(t--) { gets(a); int j = 0; int len = strlen(a);for(int i = 0; i < len-1; i++) { s[j].name[0] = a[i]; s[j].name[1] = a[i+1]; j++; } sort(s,s+j,cmp); str temp; str ans; int num = 1; int cnt = 0; temp = s[0]; for(int i = 1 ; i <= j; i++) { //printf("s[j]----------%s********\n",s[i].name); int flag = strcmp(temp.name,s[i].name); if(flag == 0) { num++; } else { if(cnt < num) { cnt = num; ans = s[i-1]; } num = 1; temp = s[i];//從下一個開始比較 } } printf("%s\n",ans.name); } puts(""); } return 0; }
hrbust 訓練賽 1109