poj 1840 Eqs hash

原创 2015年07月07日 00:11:04
Eqs
Time Limit: 5000MS   Memory Limit: 65536K
Total Submissions: 13645   Accepted: 6716

Description

Consider equations having the following form: 
a1x13+ a2x23+ a3x33+ a4x43+ a5x53=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

Source


求这个方程有多少组解

hash记录一下中值就可以辣


#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <stdlib.h>
#include <map>
#include <set>
#include <vector>
#include <queue>
#include <stack>
#include <math.h>
#include <string.h>
using namespace std;
#define Max 25000010
short hash[Max];
int cal(int a)
{
	return a*a*a;
}
int main()
{
	int a,b,c,d,e;
	cin>>a>>b>>c>>d>>e;
	for(int i=-50;i<=50;i++)
	{
		if(i==0 ) continue;
		for(int j=-50;j<=50;j++)
		{
			if(j==0) continue;
			int k=a*cal(i)+b*cal(j);
			k+=12500000;
			hash[k]++;
		}
	}
	int res=0;
	for(int i=-50;i<=50;i++)
	{
		if(i==0) continue;
		for(int j=-50;j<=50;j++)
		{
			if(j==0) continue;
			for(int k=-50;k<=50;k++)
			{
				if(k==0) continue;
				int kk=(-c)*cal(i)+(-d)*cal(j)+(-e)*cal(k);
				kk+=12500000;
				if(kk>=0&&kk<=25000000)
				res+=hash[kk];
			}
		}
	}
	cout<<res;
	return 0;
}






POJ 1840 Eqs(简单hash入门)

题目链接:http://poj.org/problem?id=1840 CSUST 2012年暑假8月组队后第十二次个人赛:http://acm.hust.edu.cn:8080/judge/c...

POJ-1840 Eqs【Hash】

题目链接:http://poj.org/problem?id=1840 题目大意: 有以下等式:a1*x13+a2*x23+a3*x33+a4*x43+a5*x53=0.x1,x2,x3,x4,x...

hdu 题目1496 Equations , POJ 题目1840 Eqs (整数Hash)

hdu 题目1496 Equations 题目翻译:  给出一个等式  a*x1^2+b*x2^2+c*x3^2+d*x4^2 = 0, a,b,c,d 范围 [-50,50]; x1,x...

POJ 1840 Eqs(Hash+思维)

poj 1840题目大意 求方程a1x31a_1x_1^3+a2x32a_2x_2^3+ a3x33a_3x_3^3+ a4x34a_4x_4^3+ a5x35a_5x_5^3=0 解的个数,ai...
  • mmy1996
  • mmy1996
  • 2016年08月30日 23:02
  • 134

poj 1840 Eqs

hash的应用,我直接映射了,差点超内存,听说有好的方法,这些数的范围还是很大的,-50^4*2·····50^4*2 ,但是最多才100*100个数,所以可以通过hash函数映射,懒得想了#inc...

poj 1840:Eqs

给定a1,a2,a3,a4,a5,求满足

POJ 1840 Eqs

思路:a1x1^3+ a2x2^3+ a3x3^3 = -(a4x4^3 + a5x5^3) 先求出右边能到达的值,对值进行hash,然后左边查询计数,这样比相反的顺序内存少用好多,时间也快不少 ...

STL的应用 POJ 1840 Eqs 题解

题目: Description Consider equations having the following form: a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0...

poj 1840 Eqs (哈希)

poj 1840 Eqs (哈希)

poj1840--Eqs

题目大意: a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 所有的变量的范围是【-50,50】,都是整数,求有多少解,也就是多少种情况满足这个等式。 算法分析:   ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj 1840 Eqs hash
举报原因:
原因补充:

(最多只允许输入30个字)