C语言超出时限怎么改?

如题所述

#include<stdio.h>

int main(){

long n;

while(scanf("%ld",&n)!=EOF){

if(n%2==0||n%5==0||(n-5)%2==0)printf("yes\n");

//如果时间要求太紧,这一行也可以改成

////if(n!=1&&n!=3)printf("yes\n");

//在程序要求的输入中,既符合要求,又省时间


else printf("no\n");

}

return 0;}

//这样改才符合题意,所有能用2元5元支付的价格不是2的倍数(偶数)就是5的倍数(一部分奇数),

//不过还有减去5后能被2整除的数

//(另一些奇数,与前面的5的倍数可以覆盖几乎所有奇数),

//比5小的数与5的差再被2整除只能得负数,一定不为0

//一定要多动脑筋呀,加油楼主

//等等我附个测试结果过来 编译器gcc

编译和准备输入测试文件

对样例进行测试

0.099秒


0.43秒 1000行的另一个测试结果

1000行的另一组测试数据开头


尾部的数据计算结果与实际一致

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-25
2 4 5 6 7 8 9 10 11 12 13 14 15 16
写了一下前几个能输出YES的价值,除了1 3都能支付 不用写循环了本回答被提问者采纳
第2个回答  2019-12-22
所有偶数都可以,也就是0,2,4,6.....,那么所有偶数加上5都可以,也就是5,7,9.....所以,只要n!=1&n!=3,你就输出yes
相似回答