POJ 1840 Eqs
2013-08-15 19:50
381 查看
这个题是对哈希表的运用练习。
题目大意:
已知a1x13+ a2x23+
a3x33+ a4x43+
a5x53=0 ,其中系数 ai∈[-50,50] 自变量xi∈[-50,0)∪(0,50],给出系数a1~a5,
求方程解的个数。
不过直接用的map,这算不算哈希表??
下面是代码:
题目大意:
已知a1x13+ a2x23+
a3x33+ a4x43+
a5x53=0 ,其中系数 ai∈[-50,50] 自变量xi∈[-50,0)∪(0,50],给出系数a1~a5,
求方程解的个数。
不过直接用的map,这算不算哈希表??
下面是代码:
#include <stdio.h> #include <map> using namespace std; int main() { int a[5],i; while(scanf("%d",&a[0])!=EOF) { int i,j,k,ans=0; map <int ,int> map1; for(i=1; i<5; i++) { scanf("%d",&a[i]); } for (int i =-50; i <=50; i++) { for (int j =-50; j <=50; j++) { if (i ==0|| j ==0) { continue; } int temp = i * i * i * a[0] + j * j * j * a[1]; if (map1.find(temp) == map1.end()) { map1[temp] =1; } else { map1[temp]++; } } } for (int i =-50; i <=50; i++) { for (int j =-50; j <=50; j++) { for (int k =-50; k <=50; k++) { if (i ==0|| j ==0|| k ==0) { continue; } int temp = i * i * i * a[3] + j * j * j * a[4] + k * k * k * a[2]; if (map1.find(0- temp) == map1.end()) { continue; } else { ans += map1[0- temp]; } } } } printf("%d\n",ans); } }
相关文章推荐
- HDU_1496 Equations && POJ_1840 Eqs(Hash)
- poj-1840 Eqs
- POJ-1840 Eqs
- POJ 1840 Eqs(hash)
- POJ - 1840 Eqs解题报告
- poj 1840 Eqs
- POJ-1840-Eqs【哈希】
- POJ 1840 Eqs
- POJ 1840 Eqs
- POJ 1840Eqs(hash)
- POJ-1840-Eqs
- Eqs - poj 1840(hash)
- POJ 1840 Eqs
- POJ 1840 Eqs
- poj 1840 Eqs(二分)
- POJ1840——哈希——Eqs
- poj1840--Eqs
- Poj 1840 Eqs(哈兮+复杂度)
- poj 1840 Eqs
- POJ 1840 Eqs (hash)