2026/2/20 20:37:08
网站建设
项目流程
网站权重对优化的作用,最新网站发布,酷站官网,上弘科技网站建设欢迎大家订阅我的专栏#xff1a;算法题解#xff1a;C与Python实现#xff01; 本专栏旨在帮助大家从基础到进阶 #xff0c;逐步提升编程能力#xff0c;助力信息学竞赛备战#xff01;
专栏特色 1.经典算法练习#xff1a;根据信息学竞赛大纲#xff0c;精心挑选…欢迎大家订阅我的专栏算法题解C与Python实现本专栏旨在帮助大家从基础到进阶 逐步提升编程能力助力信息学竞赛备战专栏特色1.经典算法练习根据信息学竞赛大纲精心挑选经典算法题目提供清晰的代码实现与详细指导帮助您夯实算法基础。2.系统化学习路径按照算法类别和难度分级从基础到进阶循序渐进帮助您全面提升编程能力与算法思维。适合人群准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生希望系统学习C/Python编程的初学者想要提升算法与编程能力的编程爱好者附上汇总帖GESP认证C编程真题解析 | 汇总【题目来源】洛谷[P14918 GESP202512 五级] 相等序列 - 洛谷【题目描述】小 A 有一个包含N NN个正整数的序列A { A 1 , A 2 , … , A N } A\{A_1,A_2,\ldots,A_N\}A{A1,A2,…,AN}。小 A 每次可以花费1 11个金币执行以下任意一种操作选择序列中一个正整数A i A_iAi1 ≤ i ≤ N 1\le i\le N1≤i≤N将A i A_iAi变为A i × P A_i\times PAi×PP PP为任意质数选择序列中一个正整数A i A_iAi1 ≤ i ≤ N 1\le i\le N1≤i≤N将A i A_iAi变为A i P \frac{A_i}{P}PAiP PP为任意质数要求A i A_iAi是P PP的倍数。小 A 想请你帮他计算出令序列中所有整数都相同最少需要花费多少金币。【输入】第一行一个正整数N NN含义如题面所示。第二行包含N NN个正整数A 1 , A 2 , … , A N A_1,A_2,\ldots,A_NA1,A2,…,AN代表序列A AA。【输出】输出一行代表最少需要花费的金币数量。【输入样例】5 10 6 35 105 42【输出样例】8【算法标签】《洛谷 P14918 相等序列》 #贪心# #数论# #素数判断,质数,筛法# #GESP# #2025#【代码详解】#includebits/stdc.husingnamespacestd;constintN100005;intn,a[N][20],p[10005],cur,isprime[100005],ans;// n: 数字个数, a: 存储质因数统计, p: 质数数组, cur: 质数个数, isprime: 判断质数并存储索引, ans: 答案intmain(){cinn;// 输入数字个数// 埃拉托色尼筛法预处理质数for(inti2;i100000;i){if(!isprime[i])// 如果i是质数{p[cur]i;// 将质数i存入数组pisprime[i]cur;// 记录质数i在数组p中的索引for(intjii;j100000;ji)// 标记i的所有倍数isprime[j]1;// 标记为非质数}}// 处理输入的n个数字for(inti1;in;i){intx;cinx;// 输入一个数字// 分解质因数for(intj1;p[j]*p[j]x;j)// 只需检查到sqrt(x){if(x%p[j]0)// 如果p[j]是x的质因数{intcnt0;// 记录当前质因数的指数while(x%p[j]0)// 计算质因数p[j]的指数{cnt;a[j][cnt];// 统计第j个质数的cnt次方在n个数字中出现的次数x/p[j];// 除掉这个质因数}}}if(x)// 如果x还有剩余的质因数x本身是质数且大于sqrt(原x)a[isprime[x]][1];// 统计这个质数的一次方}// 计算结果for(inti1;icur;i)// 遍历所有质数for(intj1;a[i][j];j)// 遍历第i个质数的所有指数{if(a[i][j]n/2)// 如果该质因子指数出现的次数超过一半ansn-a[i][j];// 添加需要改变的个数elseansa[i][j];// 添加该指数出现的次数}coutansendl;// 输出结果return0;}【运行结果】5 10 6 35 105 42 8