[Swust OJ 166]--方程的解数(hash法)
2015-06-12 20:30
309 查看
题目链接:http://acm.swust.edu.cn/problem/0166/
Time limit(ms): 5000 Memory limit(kb): 65535
有如下方程组: A1*x1^3+A2*x2^3+A3*x3^3+A4*x4^3+A5*x5^3=0,其中A1…A5都在[-50,50]内。 如果(x1,x2,x3,x4,x5)(其中-50<=xi<=50,xi!=0)能让该等式成立,就说(x1,x2,x3,x4,x5)为其一组解,现在的问题是要问你该等式共有多少组解。
Description
输入包括5个系数 A1,A2,A3,A4,A5
注意:这里是多组输入哈,太坑爹了!
Input
输出该方程解的数目
Output
Sample Input
解题思路:明显的hash,但是想了想,这里的系数[-50,50],x范围[-50,50],
那么求得的解的变换范围为[-12500000,12500000]数组大小25000000(内存直接爆了)
表示智商捉急~~然后晓得了还有short 这个东东(http://bbs.csdn.net/topics/370037447)
然后卡到内存ac了
代码如下:
View Code
Time limit(ms): 5000 Memory limit(kb): 65535
有如下方程组: A1*x1^3+A2*x2^3+A3*x3^3+A4*x4^3+A5*x5^3=0,其中A1…A5都在[-50,50]内。 如果(x1,x2,x3,x4,x5)(其中-50<=xi<=50,xi!=0)能让该等式成立,就说(x1,x2,x3,x4,x5)为其一组解,现在的问题是要问你该等式共有多少组解。
Description
输入包括5个系数 A1,A2,A3,A4,A5
注意:这里是多组输入哈,太坑爹了!
Input
输出该方程解的数目
Output
1 | 23 45 36 13 57 |
1 | 1436 |
那么求得的解的变换范围为[-12500000,12500000]数组大小25000000(内存直接爆了)
表示智商捉急~~然后晓得了还有short 这个东东(http://bbs.csdn.net/topics/370037447)
然后卡到内存ac了
代码如下:
#include <stdio.h> #include <math.h> #include <string.h> #define maxn 200005 int hash[maxn][10], num[maxn]; int main(){ int i, j, k, l, cnt, tmp, mark, a[5]; while (~scanf("%d%d%d%d%d", &a[0], &a[1], &a[2], &a[3], &a[4])){ memset(num, 0, sizeof(num)); cnt = 0; for (i = -50; i <= 50; i++){ if (i){ for (j = -50; j <= 50; j++){ if (j){ tmp = a[0] * i*i*i + a[1] * j*j*j; mark = abs(tmp) % maxn; hash[mark][num[mark]] = tmp; num[mark]++; } } } } for (i = -50; i <= 50; i++){ if (i){ for (j = -50; j <= 50; j++){ if (j){ for (k = -50; k <= 50; k++){ if (k){ tmp = a[2] * i*i*i + a[3] * j*j*j + a[4] * k*k*k; mark = abs(tmp) % maxn; for (l = 0; l < num[mark]; l++) if (tmp == hash[mark][l]) cnt++; } } } } } } printf("%d\n", cnt); } return 0; }
View Code
相关文章推荐
- 基于Enterprise Library的Winform开发框架实现支持国产达梦数据库的扩展操作
- SearchState API
- ios开发-UI进阶-核心动画-时钟动画小案例
- acdream 1681 跳远女王(BFS,暴力)
- JavaScript 技术概要
- WordSequence API
- 编写算法,求所有包含字符串S中而不包含字符串T中的字符串,构成的新串r以及r中每一个字符在S中第一次出现的位置
- 国产达梦数据库的结合Enterprise Library的应用开发
- Task 6.4 冲刺Two之站立会议5
- UnitSearchState API
- ember启动报错
- java学习之IO流2
- 使用Apache的ab工具进行压力测试
- 深入学习SlidingMenu
- 深入学习SlidingMenu 2015-06-12 20:27 856人阅读 评论(0) 收藏
- ember启动报错
- ember启动报错
- socks5 代理
- js+canvas实现纸牌游戏
- 二分图