poj 1730 map 水过

原创 2012年03月27日 16:03:17
#include <iostream>
#include <cmath>
#include <map>
#include <cstdio>

using namespace std;


typedef __int64 LL;
const  LL M = 2147483649;
map<LL,LL> G;


LL pows(LL a,LL b)
{
	LL result = 1;
	while(b--)
	{
		result *= a;
	}
	return result;
}
void init()
{
	for(LL i=2;i<=200000;i++)
	{   
		for(int k=0;k<2;k++)
		{
			i = - i;
		for(LL j=2;j<=31;j++)
		{
			LL temp = pows(i,j);
			if(temp>M||temp<-M)break;
			if(G[temp]==0)G[temp]=j;//这个其实很缺陷
		}
		}
	}
}
int main()
{
   init();
   int n;
   while(cin>>n)
   {
	   if(n==0)break;
	   LL en = G[(LL)n];//同样很缺陷!!!
	   if(en==0)puts("1");
	   else printf("%I64d\n",en);
   }
   return 0;
}

相关文章推荐

poj 1730Perfect Pth Powers(分解质因数)

Perfect Pth Powers Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 16746   Accep...

poj 1730 Perfect Pth Powers

题目大概意思 给你一个x 令 x=b^p 求最大的p 例如 81=9^2=3^4则p的值为 4 一看蒙啦,这怎么求啊,数据范围在2^32次方之内,纠结,这种题一定会有算法, 再看列出几个...

HDU 1730 Northcott Game(和poj1704差不多)

原题:http://acm.hdu.edu.cn/showproblem.php?pid=1730 尼姆博弈详细解释:
  • YJX_xx
  • YJX_xx
  • 2014年05月03日 21:26
  • 852

poj 1730 java+数学方法

import java.util.*; import java.math.*; public class Main { static int prime[]= new int[100000];...

poj-1730 Perfect Pth Powers

题目链接:http://poj.org/problem?id=1730 Perfect Pth Powers Time Limit: 1000MS   Memory L...

zoj 2124&& poj 1730(数论)

点击打开链接 给你一个n,求最大的x,满足a^x==n(a是整数)。。。 n可以分解为素数的乘积的形式,即n=p1^a1*p2^a2*...*pm^am,可惜发现可以变形, n=(p1^b1*...

POJ 1730 Perfect Pth Powers 解题报告(因式分解)

Perfect Pth Powers Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 1634...
  • kbdwo
  • kbdwo
  • 2014年04月21日 15:52
  • 749

poj 1730 Perfect Pth Powers 筛法

poj 1730 Perfect Pth Powers 筛法 We say that x is a perfect square if, for some integer b, x = b2. Sim...
  • k_l_c_
  • k_l_c_
  • 2016年08月08日 21:27
  • 169

poj 1730 -- Perfect Pth Powers

http://poj.org/problem?id=1730 Perfect Pth PowersTime Limit: 1000MS Memory Limit: 10000KTotal Submi...

(水)POJ-3087 模拟,map,string

题目大意:已知两堆牌s1和s2的初始状态, 其牌数均为c,按给定规则能将他们相互交叉组合成一堆牌s12,再将s12的最底下的c块牌归为s1,最顶的c块牌归为s2,依此循环下去。   现在输入s1和s2...
  • AC_hell
  • AC_hell
  • 2016年04月12日 17:41
  • 182
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj 1730 map 水过
举报原因:
原因补充:

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