UVA 10791

简介:

题目链接:https://uva.onlinejudge.org/index.php?option=onlinejudge&page=show_problem&problem=1732
hint:素因子分解

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
typedef long long LL;
int main()
{
    int m,ss,flag,cnt;
    int cas=1;
    while(scanf("%d",&m),m)
    {
        LL ans=0;
        ss=(int)sqrt((double)m+0.5);//不要ss=吗;
        flag=0;
        for(int i=2; i<=ss; i++)//注意这里千万不要i*i<=ss啊!!!
        {
            if(m % i == 0)
            {
                flag++;
                cnt=1;
                while(m % i == 0)
                {
                    cnt*=i;
                    m/=i;
                }
                ans+=cnt;
            }
        }
        if(flag == 0)
            ans=(LL)m+1;
        else if(m>1 || flag == 1)
            ans+=m;
        printf("Case %d: %lld\n",cas++,ans);
    }
    return 0;
}
目录
相关文章
UVa11776 - Oh Your Royal Greediness!
UVa11776 - Oh Your Royal Greediness!
56 0
|
C++
UVA 之10010 - Where's Waldorf?
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SunnyYoona/article/details/24863879 ...
713 0
|
机器学习/深度学习 人工智能
uva 10870 Recurrences
点击打开uva 10870 思路:构造矩阵+矩阵快速幂 分析: 1 题目给定f(n)的表达式 f(n) = a1 f(n - 1) + a2 f(n - 2) + a3 f(n -3) + .
735 0
uva 1388 - Graveyard
点击打开链接uva1388 思路:数学 分析: 1 我们把原先的n个墓碑看成是园内的正n变形,现在的n+m个墓碑看成是园内的正n+m变形。那么通过画图我们可以知道当这个两个正多边形有一个点重合的时候移动的总距离最小 2 那么我们把这个圆进...
1017 0
uva10859Placing Lampposts
题意:给你一个n个点m条边的无向无环图,在尽量少的节点上放灯,使得所有边都被照亮,每盏灯将照亮以他为一个端点的所有边,在灯的总数最小的前提下,被两盏灯同时照亮的边数应当尽量大。 分析:d(i,j)表示i的父节点放灯的状态为j(1表示放,0不放),以i为根的树的最小x值     x=Ma+c, a表...
791 0
UVA11437
题目: In the picture below you can see a triangle ABC. Point D, E and F divides the sides BC, CA and AB into ratio 1:2 respectively.
724 0
|
人工智能
uva10382 Watering Grass
题意:有一块草坪,长为l,宽为w,再起中心线的不同位置处装有n个点状的喷水装置。每个喷水装置i可以将以它为中心,半径为ri的圆形区域润湿,请选择尽量少的喷水装置,把整个草坪全部润湿。 分析:对于直径小于宽度的喷水装置其实可以忽略,剩下的问题转换成了最小区间覆盖问题,即:用最少数量的区间去覆盖给定的...
819 0