gpt4 book ai didi

c - 无法清除测试用例: Am supposed to write code for this:

转载 作者:行者123 更新时间:2023-11-30 21:46:57 24 4
gpt4 key购买 nike

苹果和橙子的问题。

12 个测试用例中只有 3 个被清除。几个小时后就想不出其他事情了。

示例输入0

7 11
5 15
3 2
-2 2 1
5 -6

示例输出 0

1
1

问题:https://www.hackerrank.com/challenges/apple-and-orange/problem

代码

int main(){

int s;
int t;
scanf("%d %d",&s,&t);

int a;
int b;
scanf("%d %d",&a,&b);

int m;
int n;
scanf("%d %d",&m,&n);

int *apple = malloc(sizeof(int) * m);
for(int apple_i = 0; apple_i < m; apple_i++){
scanf("%d",&apple[apple_i]);
}


int *orange = malloc(sizeof(int) * n);
for(int orange_i = 0; orange_i < n; orange_i++){
scanf("%d",&orange[orange_i]);
}

int fellap=0;
int fellor=0;
int d;

for(int apple_i = 0; apple_i < m; apple_i++){
d=apple[apple_i]+a;
f(d>=s && d<=t){
fellap++;
}
}

for(int orange_i = 0; orange_i < n; orange_i ++){
d=orange[orange_i]+b;
if(d>=s&&d<=t){
fellor++;
}
}

printf("%d\n", fellor);
printf("%d\n", fellap);

return 0;
}

最佳答案

您的代码中的错误是一个非常微不足道的错误。您已经切换了橙子和苹果的输出。改变

printf("%d\n", fellor);
printf("%d\n", fellap);

printf("%d\n", fellap);
printf("%d\n", fellor);

我认为没有必要将所有值读入数组。您可以简单地遍历输入并同时进行计算。这是通过所有测试用例的示例:

通过所有测试用例的工作代码:

int main(){
int s;
int t;
scanf("%d %d",&s,&t);
int a;
int b;
scanf("%d %d",&a,&b);
int m;
int n;
scanf("%d %d",&m,&n);

int noApples=0;
int noOranges=0;

for(int apple_i = 0; apple_i < m; apple_i++){
int apple;
scanf("%d",&apple);
if (apple+a >= s && t >= apple+a)
noApples++;
}

for(int orange_i = 0; orange_i < n; orange_i++){
int orange;
scanf("%d",&orange);
if (orange+b >= s && t >= orange+b)
noOranges++;
}
printf("%d\n%d\n", noApples, noOranges);
return 0;
}

关于c - 无法清除测试用例: Am supposed to write code for this:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44998081/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com