HDU 4379 水题,大水,但我WA了很多次,做了很久
2013-03-28 20:26
393 查看
http://blog.csdn.net/diannaok/article/details/7875086?reload
我是看着他的写的,但是有个小错误,在初始化值时,令>L/2中最大的数的初始值为L+1较为合适,想想1 3 3 1 4
这组测试数据。
这题我再详细说一下,我们试想在子集中最大的那个数怎么取,如果取<=M/2那么所有<=M/2的数一定都可以取,但是如果取一个>M/2的数的话,那么该子集只能取一个>M/2的数,取两个的话不就不满足yi+yj <= L了嘛,如此说来,就在>M/2的数中取一个最小的,在<=M/2的数中取最大的,如果加起来<=M,则最后的sum值加1.
Attention:我本来以为用 int 存这些数就可以了,因为2*10^9不是还在 int 范围内吗?但是一直WA,一直WA,我该成long long int 之后就A了。我很想shi 啊,谁能告诉我why.同样因为上面楼主写的程序有个小小的BUG,杭电OJ未检测出来,所以,这告诫了我,有时A了也未必证明自己思维完全严谨了,没有A也不一定自己就错了,所以说啊,不要过度相信OJ 啊,要有自己的判断.
View Code
虽然没什么必要,还是贴代码吧
再套用一句写背包九讲的DD讲的话,失败并不丢人,但没有从失败中获得什么才丢人。(貌似是这样说的吧,我在写这个程序中学到了一个新东西,哈哈)
我是看着他的写的,但是有个小错误,在初始化值时,令>L/2中最大的数的初始值为L+1较为合适,想想1 3 3 1 4
这组测试数据。
这题我再详细说一下,我们试想在子集中最大的那个数怎么取,如果取<=M/2那么所有<=M/2的数一定都可以取,但是如果取一个>M/2的数的话,那么该子集只能取一个>M/2的数,取两个的话不就不满足yi+yj <= L了嘛,如此说来,就在>M/2的数中取一个最小的,在<=M/2的数中取最大的,如果加起来<=M,则最后的sum值加1.
Attention:我本来以为用 int 存这些数就可以了,因为2*10^9不是还在 int 范围内吗?但是一直WA,一直WA,我该成long long int 之后就A了。我很想shi 啊,谁能告诉我why.同样因为上面楼主写的程序有个小小的BUG,杭电OJ未检测出来,所以,这告诫了我,有时A了也未必证明自己思维完全严谨了,没有A也不一定自己就错了,所以说啊,不要过度相信OJ 啊,要有自己的判断.
View Code
#include <cstdio> #include <iostream> using namespace std; typedef long long int LL; int main() { LL n,L,A,B,mod; while(cin>>n>>L>>A>>B>>mod) { A %= mod; B %= mod; LL temp ; LL sum = 0; LL m= L /2; LL t1 = 0,t2 = L+1; //t1表示<= L/2中最大的,t2表示>L/2中最小的 temp = (A+B)%mod; for(int i=0; i<n; i++) { if(temp >= mod) temp -= mod; if(temp <= m) { sum++; if(temp > t1) t1 = temp; } else { if(temp < t2) t2 = temp; } temp += A; } if(t1+t2<=L) sum++; cout<<sum<<endl; } return 0; }
虽然没什么必要,还是贴代码吧
再套用一句写背包九讲的DD讲的话,失败并不丢人,但没有从失败中获得什么才丢人。(貌似是这样说的吧,我在写这个程序中学到了一个新东西,哈哈)
相关文章推荐
- hdu 2539 虽然是水题 wa了很多次 说明自己的基本功不扎实 需要打好基础先 少年
- hdu 4891---水题 但是WA了很多次
- HDU-1093-A+B for Input-Output Practice (V)(水题也WA?)
- hdu 2955 水题却wa几次值得反思
- HDU-1228 - A + B (很久没做水题了!都快忘了......)
- HDU 1017A Mathematical Curiosity 水题 WA了6次
- hdu 4379 枚举水题
- HDU1335_Basically Speaking【水题】
- HDU 5578 Friendship of Frog 水题
- hdu 4730 We Love MOE Girls(字符串:水题)
- hdu 5752 Sqrt Bo(2016 Multi-University Training Contest 3——水题)
- HDU 1062 Text Reverse(水题)
- HDU 1787 GCD Again(欧拉函数,水题)
- [水题]hdu 2084
- HDU:5908 Abelian Period(水题+技巧)
- HDU 4671 Backup Plan (水题)
- HDU 3215 The first place of 2^n (数论-水题)
- HDU 1056 HangOver 模拟 水题
- HDU 1014 Uniform Generator 水题
- acm 弱渣不会水题(3)--(HDU 2504)