2012天津赛区网络赛第五题---A very hard mathematic problem(hdu4284)
2012-09-16 21:53
330 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4282
比赛的时候,思路就是暴搜,但队友做出来了,就做别的去了,之后看题解,大多数都是使用二分的方法解决的,但暴搜也是可以过的,先贴上暴搜的代码,有时间间再写写二分。
暴搜的时候注意Z==2 时,要特殊处理,否则会超时的。
代码:
比赛的时候,思路就是暴搜,但队友做出来了,就做别的去了,之后看题解,大多数都是使用二分的方法解决的,但暴搜也是可以过的,先贴上暴搜的代码,有时间间再写写二分。
暴搜的时候注意Z==2 时,要特殊处理,否则会超时的。
代码:
#include<stdio.h> #include<math.h> int K; int x,y,z; int ans; int main() { while(scanf("%d",&K)!=EOF && K!= 0) { ans = 0; int t = (int)sqrt(K*1.0); if(t*t == K) ans += (t-1)/2; for(z=3;z<31;z++) { for(x=1;;x++) { __int64 temp = (__int64)pow(x*1.0,z*1.0); if(temp > K/2) break; for(y=x+1;;y++) { __int64 temp1 = (__int64)pow(y*1.0,z*1.0); if(temp1 + temp + x*y*z > K) break; if(temp1 + temp + x*y*z == K) { ans ++; break; } } } } printf("%d\n",ans); } return 0; }
相关文章推荐
- hdu 4282 A very hard mathematic problem (2012 天津网络赛 1005)
- HDU 4282 A very hard mathematic problem(12年天津网络赛-数学)
- HDU 4282 A very hard mathematic problem(解方程 天津网络赛)
- 0909 - 天津网络赛 - hdu 4282 - A very hard mathematic problem
- 2012天津赛区网络赛第二题---Number(hdu4279)
- hdu 4282 A very hard mathematic problem(找规律)
- E - A very hard mathematic problem----(2015 summer training #3)
- HDU 4282 A very hard mathematic problem --枚举+二分(或不加)
- 长春赛区2012 A Simple Problem with Integers 1001题 (网络赛)
- Hdu 4292 Food (2012成都赛区网络赛第五题,拆点网络流)
- HDU 4282 A very hard mathematic problem --枚举+二分(或不加)
- hdu 4278 2012天津赛区网络赛 数学 *
- HDU 4282 A very hard mathematic problem
- HDU 4282 - A very hard mathematic problem(数学)
- 2012天津赛区网络赛第三题--Island Transport(hdu4280)
- A very hard mathematic problem(天津online)
- 2012天津赛区网络赛第一题---Faulty Odometer(hdu4278)
- Problem D. A very hard Aoshu problem (金华赛区 2012 09 22)
- 2012天津赛区网络赛 hdu 4280 Island Transport
- !HDU 4282 A very hard mathematic problem-卡时间-(二分枚举)