poj是sb吗??1011
http://poj.org/problem?id=1011&lang=default&change=true
1
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int *get(int i)
{
int *v=(int *)malloc(sizeof(int)*i);
int j=0;
while (j<i){
scanf("%d",v+j);
j++;
}
return v;
}
int comp(const void *v,const void *w){
return *(int *)v-*(int *)w;
}
int ceshi(int i,int j){
if (j%i!=0){
return -1;
}
else {
return 1;
}
}
int fuck(int *v,int i){
int j=0;
int min,sum,fuck;
sum=0;
min=v[i-1];
for(;j<i;j++){
sum+=v[j];
}
for(j=min+1;j<sum;j++){
//printf("%d %d\n",j,sum);
fuck=ceshi(j,sum);
if (fuck>0){
break;
}
}
return j;
}
int main(void)
{
int i;
int *v=NULL;
int jj[1000];
memset(jj,0,1000);
int cao=0;
int laji=0;
while (1){
scanf("%d",&i);
getchar();
if (i==0)
break;
v=get(i);
qsort(v,i,sizeof(int),comp);
laji=fuck(v,i);
jj[cao++]=laji;
free(v);
v=NULL;
}
cao=0;
while (jj[cao]!=0){
printf("%d\n",jj[cao++]);
}
return 0;
}
2
#include<stdio.h>
#include <stdlib.h>
int *get(int i)
{
int *v=(int *)malloc(sizeof(int)*i);
int j=0;
while (j<i){
scanf("%d",v+j);
j++;
}
return v;
}
int comp(const void *v,const void *w){
return *(int *)v-*(int *)w;
}
int ceshi(int i,int j){
if (j%i!=0){
return -1;
}
else {
return 1;
}
}
void fuck(int *v,int i){
int j=0;
int min,sum,fuck;
sum=0;
min=v[i-1];
for(;j<i;j++){
sum+=v[j];
}
for(j=min+1;j<sum;j++){
//printf("%d %d\n",j,sum);
fuck=ceshi(j,sum);
if (fuck>0){
printf("%d\n",j);
break;
}
}
}
int main(void)
{
int i;
int *v=NULL;
while (1){
scanf("%d",&i);
getchar();
if (i==0)
break;
v=get(i);
qsort(v,i,sizeof(int),comp);
fuck(v,i);
free(v);
v=NULL;
}
return 0;
}
这两个只是输出方式不一样??
一直Wrong Answer
请这里的大神,推荐个好的最好不是china的
[解决办法]
看你的函数名,我也没什么想看下去的欲望了.
你这样的心态,别说是china的,即使是国外的,你也是一样的心态.
oj本来就是这样,对每一种格式都严格要求,甚至多一个空格也不会AC.
国外的也是一样,你还是好好摆正心态吧.
[解决办法]
测试用例:
9
15 3 2 11 4 1 8 8 8
6
6 2 2 4 8 8
5
1 1 1 1 1
2
1 1
4
2 2 9 9
3
1 2 3
64
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40
40 40 43 42 42 41 10 4 40 40 40 40 40 40 40 40 40 40 40 40 40
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40
40
7
49 48 47 46 45 44 43
7
3 4 5 5 5 5 13
7
2 7 7 7 7 10 20
6
1 2 3 11 11 20
7
63 2 44 12 60 35 60
9
5 2 1 5 2 1 5 2 1
4
1 2 3 4
64
32 32 32 32 32 32 32 32 32 32
32 32 32 32 32 32 32 32 32 32
32 32 32 32 32 32 32 32 32 32
32 32 32 32 32 32 32 32 32 32
32 32 32 32 32 32 32 32 32 32
32 32 32 32 32 32 32 32 32 32
33 33 31 31
64
40 40 30 35 35 26 15 40 40 40 40 40 40 40 40 40 40 40 40 40 40
40 40 43 42 42 41 10 4 40 40 40 40 40 40 40 40 40 40 40 40 40
40 25 39 46 40 10 4 40 40 37 18 17 16 15 40 40 40 40 40 40 40
40
45
15 3 2 11 4 1 8 8 8 15 3 2 11 4 1 8 8 8 15 3 2 11 4 1 8 8 8 15 3 2 11 4 1 8 8 8
15 3 2 11 4 1 8 8 8
0
结果:
20
10
1
1
11
3
1251
322
20
30
24
276
6
5
64
454
20
[解决办法]
stick这题哪有那么简单。算法错得一塌糊涂。