博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ1840(哈希)
阅读量:6697 次
发布时间:2019-06-25

本文共 1818 字,大约阅读时间需要 6 分钟。

大意

Description

Consider equations having the following form: 
a1x1
3+ a2x2
3+ a3x3
3+ a4x4
3+ a5x5
3=0 
The coefficients are given integers from the interval [-50,50]. 
It is consider a solution a system (x1, x2, x3, x4, x5) that verifies the equation, xi∈[-50,50], xi != 0, any i∈{1,2,3,4,5}. 
Determine how many solutions satisfy the given equation. 

Input

The only line of input contains the 5 coefficients a1, a2, a3, a4, a5, separated by blanks.

Output

The output will contain on the first line the number of the solutions for the given equation.

Sample Input

37 29 41 43 47

Sample Output

654

求方程解的个数。

分析;将原式变为

a1x1
3+ a2x2
3+ a3x3
3=- a4x4
3- a5x5
3

对左式枚举哈希处理,再计算右式查询。

代码

#include
#include
#include
#include
#include
#define maxn 1030307int hashn[maxn], nextn[maxn];int num[maxn];using namespace std;int main(){ int a, b, c, d, e; while (~scanf("%d%d%d%d%d", &a, &b, &c, &d, &e)) { memset(hashn, -1, sizeof(hashn)); int mm = 0; for (int i = -50; i <= 50; i++) if (i != 0) for (int j = -50; j <= 50; j++) if (j != 0) for (int k = -50; k <= 50; k++) if (k != 0) { int t = a*i*i*i + b*j*j*j + c*k*k*k; num[mm] = t; int key = t%maxn; key = (key + maxn) % maxn; nextn[mm] = hashn[key]; hashn[key] = mm; mm++; } int sum = 0; for (int i = -50; i <= 50; i++) if (i != 0) for (int j = -50; j <= 50; j++) if (j != 0) { int t = -e*i*i*i - d*j*j*j; int key = t%maxn; key = (key + maxn) % maxn; int m = hashn[key]; while (m != -1) { if (t == num[m]) sum++; m = nextn[m]; } } printf("%d\n", sum); } return 0;}

转载于:https://www.cnblogs.com/nickqiao/p/7583392.html

你可能感兴趣的文章
HashMap中数组初始化的秘密
查看>>
high-speed A/D performance metrics and Amplifie...
查看>>
微信小程序中使用emoji表情相关说明
查看>>
ios 图片添加阴影
查看>>
Hibernate实体JSONObject化时遇到的问题
查看>>
Linux负载均衡软件LVS之一(概念篇)
查看>>
test
查看>>
young people can also be a leader
查看>>
rabbitmq的安装全过程
查看>>
windows 下安装rabbitmq
查看>>
zmail邮件系统安装手册 V2.0版本
查看>>
gcc g++安装
查看>>
CodeIgniter中运用composer安装依赖包
查看>>
云计算解决方案——电信行业
查看>>
8种排序算法比较
查看>>
REMarkerClusterer
查看>>
关于浏览器模式和文本模式的困惑
查看>>
Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
查看>>
setBackgroundResource的一个问题
查看>>
圆桌论坛对话:互联网产业革命
查看>>