杭电oj1004 Let the Balloon RIse
#include<stdio.h>#include<string.h>main(){intn,i,j,t,max,num[1000];charcolor[1000][16...
#include <stdio.h>
#include <string.h>
main(){
int n, i, j, t, max, num[1000];
char color[1000][16];
while(scanf("%d", &n) != EOF){
if(n){
num[0]=0;
scanf("%s", color[0]);
for(i=1; i <n; i++){
num[i]=0;
scanf("%s", color[i]);
for(j=0; j <i-1; j++)
if(strcmp(color[i], color[j])==0) num[i] +=1;
}
max=num[0];
t=0;
for(i=1; i <n; i++)
if(max <num[i]) {max =num[i]; t=i;}
printf("%s\n",color[t]);
}
}
}
这是在网上找的代码,在杭电OJ上AC,但经我测试,当输入为
3
blue
red
red时
结果为blue 明显错误, 求解 展开
#include <string.h>
main(){
int n, i, j, t, max, num[1000];
char color[1000][16];
while(scanf("%d", &n) != EOF){
if(n){
num[0]=0;
scanf("%s", color[0]);
for(i=1; i <n; i++){
num[i]=0;
scanf("%s", color[i]);
for(j=0; j <i-1; j++)
if(strcmp(color[i], color[j])==0) num[i] +=1;
}
max=num[0];
t=0;
for(i=1; i <n; i++)
if(max <num[i]) {max =num[i]; t=i;}
printf("%s\n",color[t]);
}
}
}
这是在网上找的代码,在杭电OJ上AC,但经我测试,当输入为
3
blue
red
red时
结果为blue 明显错误, 求解 展开
展开全部
#include <stdio.h>
#include <string.h>
main(){
freopen("x.in","r",stdin);
int n, i, j, t, max, num[1010]; //num[i]表示的是i之后有多少和i颜色相同的气球
char color[1000][16];
while(scanf("%d", &n) != EOF){
if(n){
num[0]=0;
scanf("%s", color[0]);
for(i=1; i <n; i++){
num[i]=0;
scanf("%s", color[i]);
for(j=0;j<i;j++) //这里应该是枚举i之前的所有的,不应该是<i-1,而是<i,能AC大概是人品好吧....
if(strcmp(color[i],color[j])==0)
num[i]+=1;
}
max=num[0];
t=0;
for(i=1;i<n;i++)
if(max<num[i]){
max=num[i];
t=i;
}
printf("%s\n",color[t]);
}
}
}
#include <string.h>
main(){
freopen("x.in","r",stdin);
int n, i, j, t, max, num[1010]; //num[i]表示的是i之后有多少和i颜色相同的气球
char color[1000][16];
while(scanf("%d", &n) != EOF){
if(n){
num[0]=0;
scanf("%s", color[0]);
for(i=1; i <n; i++){
num[i]=0;
scanf("%s", color[i]);
for(j=0;j<i;j++) //这里应该是枚举i之前的所有的,不应该是<i-1,而是<i,能AC大概是人品好吧....
if(strcmp(color[i],color[j])==0)
num[i]+=1;
}
max=num[0];
t=0;
for(i=1;i<n;i++)
if(max<num[i]){
max=num[i];
t=i;
}
printf("%s\n",color[t]);
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询