top1编程
← 返回题目
题解

质数的和与积

1 条题解

  • 0
    @ 2026-7-29 20:22:50
    #include<bits/stdc++.h> //质数的和与积
    using namespace std; 
    //函数任务=>判断是不是质数
    bool zs(int shu){//对输入的数字做判断
    	if(shu<2){//数字是1
    		return false;
    	}
    	for(int i=2;i*i<=shu;i++){//减少整除数字个数
    		if(shu%i==0){
    			return false;
    		}
    	}
    	return true;//剩余的肯定是质数
    }
    int main(){//题目任务 =>两个数字和s ==>列举全部第一数字 第二数字的情况 乘积的情况
    	int s;
    	cin>>s;
    	for(int i=s/2;i>=1;i--){//第一数字范围1到s 错误
    		//从总和的一半开始
    		if(zs(i)==true&&zs(s-i)==true){//希望第一数字质数 第二数字也是质数 (s-i)
    			cout<<i*(s-i);
    			return 0;//把情况结束 只要1个答案
    		}
    	}
    	return 0;
    }
    
    • 1