3 条题解

  • -1
    @ 2024-5-19 21:43:42

    思路:枚举(暴力)

    #include <bits/stdc++.h>
    using namespace std;
    long long zs[1000001];
    void zsb(){
    	bool l;
    	for(int i = 2,k = 1 ; i <= 1000000 ; i++){
    		l = false;
    		for(int j = 2 ; j <= sqrt(i) ; j++){
    			if(i % j == 0){
    				l = false;
    				break;
    			}
    		}
    		if(!l){
    			zs[k] = i;
    			k++;
    		}
    	}
    }
    bool zdgys(int a,int b){
    	int i = 1;
    	while(zs[i] < b){
    		if(a % zs[i] == 0 && b % zs[i] == 0) return false;
    		i++;
    	}
    	return true;
    }
    long long a,b,maxn = -100000000001;
    int main(){
    	zsb();
    	cin >> a;
    	b = a - 2;
    	while(!(zdgys(a,b) && zdgys(a - 1,b))) b--;
    	maxn = max(b * (a - 1) * a,maxn);
    	a--;
    	b = a - 2;
    	while(!(zdgys(a,b) && zdgys(a - 1,b))) b--;
    	maxn = max(b * (a - 1) * a,maxn);
    	cout << maxn << endl;
    	return 0;
    }
    

    信息

    ID
    980
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    237
    已通过
    68
    上传者