UVA 294(p344)----Divisors
2016-02-25 22:47
302 查看
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn=100007; int u[maxn],prime[maxn]; int ans,num,n,l,r,p; void get() { num=1; memset(u,true,sizeof(u)); for(int i=2; i<=maxn; i++) { if(u[i]) prime[num++]=i; for(int j=1; j<num; j++) { if(i*prime[j]>maxn) break; u[i*prime[j]]=false; if(i%prime[j]==0) break; } } } int solve(int x) { int sum=1; for(int i=1; x>1&&i<num; i++) { if(x%prime[i]==0) { int cnt=1; while(x%prime[i]==0) { cnt+=1; x/=prime[i]; } sum*=cnt; } } return sum; } int main() { //freopen("in.in","r",stdin); get(); scanf("%d",&n); for(int i=0; i<n; i++) { ans=0; scanf("%d%d",&l,&r); for(int i=l; i<=r; i++) { // cout<<i<<endl; int temp=solve(i); if(temp>ans) { ans=temp; p=i; } } printf("Between %d and %d, %d has a maximum of %d divisors.\n",l,r,p,ans); } return 0; }题目地址:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=4&page=show_problem&problem=230
相关文章推荐
- 研究一下FBrush,它是从TWinControl才有的属性(可能是因为需要句柄)——发现{$R *.dfm}在运行期执行,而且很有深意,读到属性后赋值还会触发事件,这些无法在VCL代码里直接看到
- 作业1:简单博客练习
- 简单递归
- leetcode-81-Search in Rotated Sorted Array II
- linux内核链表
- 第三百二十九天 how can I 坚持
- 《Netty in Action V5》-- 第2章 Your First Netty Application
- PHP学习笔记——入门篇(1)——语法&变量
- 第一行代码-9.3 服务的基本用法
- UVA 253(p97)----Cube painting
- 理解CSS前景色和透明度
- <漫谈ElasticSearch>关于ES性能调优几件必须知道的事
- 【05】 定义类或对象
- Objective-C Runtime
- 在windows 与Linux间实现文件传输(C++&C实现)
- leetcode随笔II
- UVA 247(p365)----Calling Circles
- 随页面滚动显示/隐藏窗口固定位置元素
- python小程序之一
- 利用kvo对集合进行操作