当前位置:网站首页>(lightoj - 1370) Bi shoe and phi shoe (Euler function tabulation)
(lightoj - 1370) Bi shoe and phi shoe (Euler function tabulation)
2022-07-06 16:23:00 【AC__ dream】
Topic link :Bi-shoe and Phi-shoe - LightOJ 1370 - Virtual Judge
give n A sequence of numbers a[], For each number ai Find an Euler function whose value is greater than or equal to ai Number of numbers bi, Find all the numbers found bi The sum of the minimum values of sum( Euler function is specified here 1 The value of is 0)
Input
Yes T(T<=100) Group data , Each set of data has two lines , The first line gives n(n<=10000) The second line gives the length n Sequence a[],ai The value range of is [1,1000000]
Output
Output a number sum
Sample Input
3
5
1 2 3 4 5
6
10 11 12 13 14 15
2
1 1
Sample Output
Case 1: 22 Xukha
Case 2: 88 Xukha
Case 3: 4 Xukha
analysis : This problem is to examine the Euler function and make a table , If you don't know this, you can check my previous blog , It introduces in detail the principle of Euler function table , Here is the blog address : Euler function method and its basic application _AC__dream The blog of -CSDN Blog _ Euler function method
When we find the Euler function of all numbers , We can directly check the table , Here we can use a greedy thought , First of all, we can know from the definition of Euler function , The Euler function value is greater than x The number of must be greater than x, So every time we look up the first Euler function, the value is greater than a[i] The number of hours can be from a[i] Start looking up the table , Before checking the table, we can check a Array to sort , This will play an optimization role to a certain extent , Then check the table in an increasing order , Here is the code :
#include<cstdio>
#include<iostream>
#include<cstring>
#include<vector>
#include<algorithm>
#include<map>
#include<cmath>
#include<queue>
using namespace std;
const int N=1000005;// There must be an Euler function greater than 1000000 Number of numbers , Including prime numbers 1000003 that will do
bool vis[N];
int prime[N],o[N],cnt,a[N];
void init()
{
o[1]=0;// Default in this question 1 The Euler function of is 0
for(int i=2;i<N;i++)
{
if(!vis[i])
{
prime[++cnt]=i;
o[i]=i-1;
}
for(int j=1;j<=cnt&&i*prime[j]<N;j++)
{
vis[i*prime[j]]=true;
if(i%prime[j]==0)
{
o[i*prime[j]]=o[i]*prime[j];
break;
}
else
o[i*prime[j]]=o[i]*(prime[j]-1);
}
}
}
int main()
{
init();
int T;
cin>>T;
for(int _=1;_<=T;_++)
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
sort(a+1,a+n+1);
int pos=a[1];
long long ans=0;
for(int i=1;i<=n;i++)
{
while(o[pos]<a[i]) pos++;
ans+=pos;
}
printf("Case %d: %lld Xukha\n",_,ans);
}
return 0;
}边栏推荐
- 969. Pancake sorting
- Codeforces Round #801 (Div. 2)A~C
- Penetration test (4) -- detailed explanation of meterpreter command
- Useeffect, triggered when function components are mounted and unloaded
- Anaconda下安装Jupyter notebook
- 7-1 understand everything (20 points)
- 2078. Two houses with different colors and the farthest distance
- Summary of FTP function implemented by qnetworkaccessmanager
- Kubernetes集群部署
- Shell Scripting
猜你喜欢

Local visualization tools are connected to redis of Alibaba cloud CentOS server

QT implementation window gradually disappears qpropertyanimation+ progress bar

409. Longest palindrome

Luogu P1102 A-B number pair (dichotomy, map, double pointer)

本地可视化工具连接阿里云centOS服务器的redis

QT realizes window topping, topping state switching, and multi window topping priority relationship

“鬼鬼祟祟的”新小行星将在本周安全掠过地球:如何观看

Kubernetes cluster deployment

(POJ - 3579) median (two points)

pytorch提取骨架(可微)
随机推荐
Differential (one-dimensional, two-dimensional, three-dimensional) Blue Bridge Cup three body attack
Is the sanic asynchronous framework really so strong? Find truth in practice
input 只能输入数字,限定输入
921. Minimum additions to make parentheses valid
Advancedinstaller installation package custom action open file
QWidget代码设置样式表探讨
<li>圆点样式 list-style-type
Click QT button to switch qlineedit focus (including code)
AcWing——第55场周赛
树莓派4B安装opencv3.4.0
Local visualization tools are connected to redis of Alibaba cloud CentOS server
628. Maximum product of three numbers
OneForAll安装使用
Codeforces round 797 (Div. 3) no f
Kubernetes集群部署
Codeforces Round #802(Div. 2)A~D
Pyside6 signal, slot
antd upload beforeUpload中禁止触发onchange
Date plus 1 day
2078. Two houses with different colors and the farthest distance