ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

欧拉∮函数

2019-06-03 19:55:36  阅读:418  来源: 互联网

标签:bamboos 函数 int number Bi shoe bamboo 欧拉


题目:LightOJ 1370 - Bi-shoe and Phi-shoe (欧拉函数思想)

Bamboo Pole-vault is a massively popular sport in Xzhiland. And Master Phi-shoe is a very popular coach for his success. He needs some bamboos for his students, so he asked his assistant Bi-Shoe to go to the market and buy them. Plenty of Bamboos of all possible integer lengths (yes!) are available in the market. According to Xzhila tradition,

Score of a bamboo = Φ (bamboo's length)

(Xzhilans are really fond of number theory). For your information, Φ (n) = numbers less than n which are relatively prime (having no common divisor other than 1) to n. So, score of a bamboo of length 9 is 6 as 1, 2, 4, 5, 7, 8 are relatively prime to 9.

The assistant Bi-shoe has to buy one bamboo for each student. As a twist, each pole-vault student of Phi-shoe has a lucky number. Bi-shoe wants to buy bamboos such that each of them gets a bamboo with a score greater than or equal to his/her lucky number. Bi-shoe wants to minimize the total amount of money spent for buying the bamboos. One unit of bamboo costs 1 Xukha. Help him.

Input

Input starts with an integer T (≤ 100), denoting the number of test cases.

Each case starts with a line containing an integer n (1 ≤ n ≤ 10000) denoting the number of students of Phi-shoe. The next line contains n space separated integers denoting the lucky numbers for the students. Each lucky number will lie in the range [1, 106].

Output

For each case, print the case number and the minimum possible money spent for buying the bamboos. See the samples for details.

Sample Input

Output for Sample Input

3

5

1 2 3 4 5

6

10 11 12 13 14 15

2

1 1

Case 1: 22 Xukha

Case 2: 88 Xukha

Case 3: 4 Xukha

题意:

    给n个数,对于这n个数依次求某个数x的欧拉函数值不小于这个数的x最小值

数论基础:

	1.1与任何数互素 
	2.∮(n)定义为不超过n且与n互素正整数个数 
	3.如果p是素数,∮(p)= p-1,有最大值,对于合数or1 ,∮(p)<=p-2 。
    证明:如果p为素数,任意小于p的正整数与其互素
       如果p为合数,p至少有一因子d满足1<d<p,显然p,d不互素故 ∮(p)<=p-2
       如果p为1,∮(p)≠p-1

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+10;
int prime[maxn]={1,1,0}; 
void db()    //埃式筛 
{
    for(int i=2;i<maxn;i++)
    {
        if(!prime[i])
        {
            for(int j=i+i;j<=maxn;j+=i)
            {
                prime[j]=1;
            }
        }
    }
}
int main()
{
    db();
    int t;
    cin>>t;
    for(int j=1;j<=t;j++)
    {
        int n;
        cin>>n;
        long long sum=0;
        int x;
        while(n--)
        {
            cin>>x;
            for(int i=x+1;;i++)
            {
                if(!prime[i])
                {
                    sum+=i;
                    break;
                }
            } 
        }
        cout<<"Case "<<j<<": "<<sum<<" Xukha"<<endl;
    }
    return 0;
}

 


标签:bamboos,函数,int,number,Bi,shoe,bamboo,欧拉
来源: https://www.cnblogs.com/BYBL/p/10969592.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有