首页 > 其他分享 >P10720 [GESP202406 五级] 小杨的幸运数字 题解

P10720 [GESP202406 五级] 小杨的幸运数字 题解

时间:2024-07-15 18:41:28浏览次数:8  
标签:遍历 int 题解 sum ans 幸运 GESP202406 P10720

题意

如果一个数的质因子中只有两个不同的数则输出 \(1\),否则输出 \(0\)。

思路

从第一个质因子遍历到 \(sum\) 的话很明显是 \(O(nt)\) 最大是 \(n^{10}\) 很明显会炸掉。

所以遍历到 \(sum\) 是不行的,考虑正整数 \(n\) 最大的质因数是 \(\sqrt{n}\) 所以遍历到 \(\sqrt{n}\) 即可。

代码

#include <bits/stdc++.h>
using namespace std;
int lucky(int sum) {//函数处理是否为幸运数 
	int ans=0;
	int a=sum;
	for(int i=2; i*i<=a; i++) {
		if(sum%i==0) {
			ans++;
			while(sum%i==0) {
				sum/=i;
			}
		}

	}
	if(sum>1) {
		ans++;
	}
	if(ans==2) {
		return 1;
	} else {
		return 0;
	}
}
int main() {
	int n;
	cin>>n;
	int a;
	while(n--) {
		scanf("%d",&a);
		cout<<lucky(a)<<endl;
	}
	return 0;
}

标签:遍历,int,题解,sum,ans,幸运,GESP202406,P10720
From: https://www.cnblogs.com/BadBadBad/p/18303742/P10720

相关文章

  • 题解:SP10502 VIDEO - Video game combos
    大意构造一个长度为\(k\)(\(k\)是给定的)的串\(x\),使得对于\(∀1\leqi\leqn,s_i\)在\(x\)中的出现次数之和最大。输出这个最大值。思考考虑对\(s_i\)建AC自动机,然后dp。记\(dp[i][u]\)表示为长度为\(i\)的字符串,且当前已计算的节点是Trie上的编号为\(u......
  • 【题解】 [CSP-J 2021 T1] 分糖果
    题目描述题目大意给定正整数\(n\)、\(L\)、\(R\),求\(\max_{i\in\left[L,R\right]}{i\bmodn}\)。思路题目主要考察:分类讨论。众所周知,对于\(\forallx\),有$(x\bmodn)\in\left[0,n-1\right]$。可以分为两种情况讨论:如果\(\left\lfloor\frac{L......
  • 题解:CF1833F Ira and Flamenco
    思路因为要一个长度为\(m\)的,且最大与最小的元素之差小于等于\(m\)所以序列应为\(a_i,a_i+1,a_i+2\dots,a_i+m-1\),所以满足要求的序列之需要连续\(m\)个就行了,这个最开始排序,去重后用lower_bound求一下小于\(a_i+m-1\)的数有没有\(m\)个就行了。考虑满足要求序列的......
  • P8704 [蓝桥杯 2020 省 A1] 填空问题 题解
    题目传送门A.跑步训练我们经过仔细观察,可以发现每222分钟就会消耗300300......
  • P2754 [CTSC1999] 家园 / 星际转移问题题解
    开始时,将源点连一条权值为\(k\)的边到地球。然后以时间分层,从上一层的点连接到下一层的点,权值为飞船载人数量,并将代表月球的点连接到汇点。每加一层,在上一层的基础上进行增广,看能不能增加流量,如果流量变为\(k\),那么证明运送完成。可以证明枚举时间最多到\(1500\),图的点数不......
  • SP4063 MPIGS - Sell Pigs / P4638 [SHOI2011] 银行家题解
    考虑使用网络流。建立源点\(S\)和汇点\(T\)。每个人作为一个点,将它们与汇点\(T\)连接,权值为需要的猪的数量。然后对于每个人,如果和之前的某个人开了相同的猪圈,那么就将之前的那个人的点与这个人的点连接。如果猪圈还没有被开过,就从源点\(S\)连接这个点,权值为猪圈猪的初......
  • P1402 酒店之王题解
    考虑使用网络流。分为\(6\)层。第一层为源点。第二层为所有菜的点。第三层和第四层都表示人。(限制只能选择一个)。第五层为房子。第六层为汇点。#include<bits/stdc++.h>#defineintlonglongusingnamespacestd;constintN=410,M=101000,INF=0x3f3f3f3......
  • AE莫名的小问题解决办法和基础的操作快捷键分享
    更多macOS实用教程,小白教学点击这里!AdobeAfterEffects,简称AE,是由Adobe公司开发的视频剪辑和设计软件。它是一款用于动画、视觉效果和电影合成的二维半动画软件,广泛应用于电影、电视和网络视频创作。AfterEffects主要用于创建动态图像和视觉特效,被誉为制作动态影像设计不可或......
  • 题解 P5270 无论怎样神树大人都会删库跑路
    题解P5270无论怎样神树大人都会删库跑路题意已经说得很清楚了,我们直接开始讲题。首先考虑一次只插入一个字符。问题只在于我们想要判断最后几个字符是否组成相同,即判断两个可重集合是否相等。这个需求很像字符串哈希的目的(快速判断两个字符串是否相等)。但集合怎么哈希呢?需求......
  • 【力扣 709】转换成小写字母 C++题解(字符串)
    给你一个字符串s,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。示例1:输入:s=“Hello”输出:“hello”示例2:输入:s=“here”输出:“here”示例3:输入:s=“LOVELY”输出:“lovely”提示:1<=s.length<=100s由ASCII字符集中的可打印字符组......