80分求优化 超时了 #7和#10-#15都超时了
查看原帖
80分求优化 超时了 #7和#10-#15都超时了
1082166
nsu23010220305楼主2023/10/4 22:51
#include <iostream>
using namespace std;
int main(){
	int n;
	cin >> n;
	for(int i=2;i<1.0*n/2;i++){
		if(n/2%i==0){
			break;
		}
		if(i==1.0*n/2-1){
			cout << 1.0*n/2;
			return 0;
		}
	}
	for(int i=2;i<1.0*n/3;i++){
		if(n/3%i==0){
			break;
		}
		if(i==1.0*n/3-1){
			cout << 1.0*n/3;
			return 0;
		}
	}
	int sum =0;
	for(int i=4;i<n;i++){
		for(int j=2;j<i;j++){
			if(i%j==0){
				sum = 1;
				break;
			}
		}
		if(sum==0){
				for(int x=2;x<1.0*n/i;x++){
					if((n/i)%x==0){
						break;
					}
					if(x==1.0*n/i-1){
						cout << 1.0*n/i;
						return 0;
						}
					}
		}else{
			sum=0;
		}
	}
	return 0;
}
2023/10/4 22:51
加载中...