Equations hdu1496(hash)

//一开始写的实话就感觉会超时,结构真的TLE。呵呵,一开始的想法太过简单,后来参考某大牛的代码之后终于AC #include //2337619 2010-04-13 22:44:10 Accepted 1496 218MS 8128K 797 B C++ 悔惜晟 #include #include using namespace std; int hash1[1000001]; int hash2[1000001]; int main() { int a, b, c, d; int i, j, sum, ans; while(cin>>a>>b>>c>>d) { if((a > 0 && b > 0 && c > 0 && d > 0 )||(a < 0 && b < 0 && c < 0 && d < 0)) { cout<<"0"< = 0) hash1[sum]++; else hash2[-sum]++; //这里要记得改成 - } int ans = 0; for(i = 1; i <= 100; i++) for(j = 1; j <= 100; j++) { sum = c * i * i + d * j * j; if(sum <= 0) ans += hash1[-sum]; else ans += hash2[sum]; } cout<<16 * ans< //2337472 2010-04-13 22:13:33 Time Limit Exceeded 1496 3000MS 272K 578 B C++ 悔惜晟 #include using namespace std; int main() { int a, b, c, d; int i, j, k, sum, count; while(cin>>a>>b>>c>>d) { count = 0; if((a > 0 && b > 0 && c > 0 && d > 0 )||(a < 0 && b < 0 && c < 0 && d < 0)) { cout<<"0"< 0 && t <= 100 ) count++; } cout<< 16 * count<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值