UVA516

感觉自己的思维不够灵动变通。。。特别是写了最近的几道题目之后。。。感觉得做出加倍努力不然真的就学不进去了。。我太难了。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#include <sstream>using namespace std;int const N = 47000;
bool visit[N] = {true,true,false};//筛法获取素数表vector <int> prime,result;//存放质数,输出结果inline void setPrime(){//素数打表for( int i=2; i<N; ++i){if( !visit[i]){prime.push_back(i);for( int j=i+i; j<N; j+=i)visit[j] = true;}}
}int main(){setPrime();string line;while( getline(cin,line)){if( '0'==line[0] ) break;long long temp = 1;int base,power;istringstream ss( line);while( ss >> base >> power){while( power--)temp *= base;}temp -= 1; //依题意,任一行数字的最终大小结果for( int i=prime.size()-1; i>=0; --i){//忘记减一会导致出错if( !( temp % prime[i])){int Count = 1;//记录当前素数质因子的个数result.push_back( prime[i]);//自大到小存素数质因子(底数)temp /= prime[i];//相应变小while( !( temp % prime[i])){Count++;temp /= prime[i];}result.push_back( Count);//对应的指数}}for(unsigned int i=0; i<result.size(); ++i){if( i != result.size()-1 )//大一经常碰到过的输出格式printf("%d ",result[i]);elseprintf("%d\n",result[i]);}result.clear();//别忘记了初始化容器}return 0;
}

这里用到的素数线性筛法,应该是改进之后的晒法模板了。。。算是对之前说过的晒法的对比和补充吧。

之前的素数筛法打表

2017年03月12日 18:18:32 书

UVA 516 Prime Land相关推荐

  1. UVA, 516 Prime Land

    题意:给一个数的指数形式,例:5 1 2 1  num=5^1*2^1  求num-1的质因数分解结果 思路:素数筛法,质因数分解 代码如下: 1 #include <iostream> ...

  2. UVA516 POJ1365 LA5533 ZOJ1261 Prime Land【欧拉筛法】

    Everybody in the Prime Land is using a prime base number system. In this system, each positive integ ...

  3. UVA - 524 Prime Ring Problem

    题目链接: UVA - 524 Prime Ring Problem Description(素数环) A ring is composed of n (even number) circles as ...

  4. POJ 1365 Prime Land

    题意不好理解啊.. 以下摘自discuss 已知任意一个大于1的数可以表示成一些素数的乘积,即x=p1^e1*p2^e2-- pn^en (pi 为素数,ei 为对应素数的个数),现给你x的表示,要你 ...

  5. (数学)POJ - 1365 Prime Land

    原题链接:http://poj.org/problem?id=1365 题意: 定义:任何一个大于1的自然数N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积N=P1a1P2a2P3a3.... ...

  6. uva 10140——Prime Distance

    题意:题目出的很简单,给定一个数据范围(好吧,又是给定一个范围),然后问你在这个给定的范围内,哪两个相邻素数挨的最近,哪两个最远. 思路:这破题数据量很大,如果直接打表,铁定T,我蛋疼地打过两边了,T ...

  7. uva 524(Prime Ring Problem UVA - 524 )

    dfs练习题,我素数打表的时候j=i了,一直没发现实际上是j=i*i,以后可记住了.还有最后一行不能有空格...昏迷了半天 我的代码(紫书上的算法) #include <bits/stdc++. ...

  8. UVA 12101 Prime Path (素数筛+BFS)

    题意:给一个四位数的素数,求通过几步变换(一次只能换一个位置的数,且变换过程中只能出现素数)变为目标四位数 分析:素数筛法+BFS,BFS时更换一个数字如果符合条件就加入队列 代码: #include ...

  9. uva 10200 Prime Time

    水题,不过有坑,在输出答案的时候加个1e-5就过了,不加就是wa #include <iostream> #include <cstring> #include <alg ...

最新文章

  1. 5.基于STM32F103+OV7670的网络摄像头
  2. mysql中tonumber函数_Oracle数据库之oracle的TO_NUMBER函数
  3. python 简易 http server
  4. 基于国家标准的 EndNote 输出样式模板
  5. 软件质量模型的6大特性27个子特性
  6. java语言就业方向_2019年汉语言专业最全就业方向
  7. NFS, web,负载均衡,Nginx yum 源码安装
  8. VB6写的书籍下载软件 --老牛下书,还不错
  9. trilateration三边测距算法及C语言实现(适用stm32)
  10. 一键清除系统垃圾 bat文件
  11. 2020年日历电子版(打印版)_2020全年共12个月的日历表打印版可图片年历-2020年日历A4打印版(每月一张-横版-完美版)下载Word带节假日农历电子版-西西软件下载...
  12. c 实现走迷宫流程图_迷宫求解(有流程图).doc
  13. 【OpenCV】 实战 银行卡卡号读取
  14. 【数据结构基础_有[*pHead]和[*pEnd]的单向链表_(C++实现)】
  15. 基于OBD系统的量产车评估测试(PVE),你知多少?
  16. ubuntu使用gdown下载谷歌云盘(google drive)文件
  17. html加载富文本_HTML基础
  18. 2017-03-27Oracle故障gc buffer busy acquire导致数据库不可用
  19. EXT4分区工具MiniTool Partition Wizard Home Edition
  20. SQL SERVER 数据库delete 未加where 条件数据误删恢复办法

热门文章

  1. 净空法师法语:你想真正消业障,要用真心待人接物!南无阿弥陀佛!
  2. 使用Numpy快速分析股票数据——计算移动平均线及日周均线之间的转换
  3. I - 最大公约数GCD
  4. CSA云安全指南V4.0 D1 D2
  5. 扫描版PDF自动添加书签 | 电子书目录自动获取
  6. IBM POWER750硬盘背板介绍和如何配置分区
  7. Source Insight 4.0 安装与破解
  8. 如何学习TRIZ理论将其应用于创新实践当中?
  9. x264源代码简单分析:概述
  10. 关于IE首页被改成http://www.26dh.cn/等恶意网站