每一道水题
  • 板块灌水区
  • 楼主z13857878813
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/8/10 09:43
  • 上次更新2024/8/10 10:43:53
查看原帖
每一道水题
1013363
z13857878813楼主2024/8/10 09:43

题目B2138 最大质因子序列
众所周知,这是一道水题
话不多说,先理解题目意思
上链接!https://www.luogu.com.cn/problem/B2138
这道题是什么意思呢?想必大家都已经知道了
额,当我没说……
好吧@管理员,请容我多说几句

ACCODE  

#include<cstdio>
int ans;
void f(int a,int k){
	//a表示当前这个数,k表示除数 
	if(a%k==0){//能被整除 
		if(a/k==1) {
			//如果整除后得1,则记录答案,不用继续分解 
			ans=k;
			return;
		}
		f(a/k,k);//整除 
	}else{
		f(a,k+1);//尝试下一个数 
	} 
}
int main(){
	int n,m;
	scanf("%d%d",&n,&m);//输入 
	while(n<=m){
		f(n,2);//调用函数 
		printf("%d",ans);//输出答案 
		if(n!=m) printf(",");//特判是否需要逗号 
		n++;
	}
	return 0;
}

这是带注释版
我知道大家都不喜欢看注释,那么~

#include<cstdio>
int ans;
void f(int a,int k){
	if(a%k==0){
		if(a/k==1) {
			ans=k;
			return;
		}
		f(a%k,k);
	}else{
		f(a,k+1);
	} 
}
int main(){
	int n,m;
	scanf("%d%d",&n,&m);
	while(n<=m){
		f(n,2);
		printf("%d",ans);
		if(n!=m) printf(" ");
		n+=1;
	}
	return 0;
}

求过

2024/8/10 09:43
加载中...