1 条题解

  • 0
    @ 2025-1-13 20:07:59

    连续非素数的最大长度

    读题,题目说让我们计算一个数列里连续的非素数的最大长度。 思路是直接将输入进来的数直接判断,是不是和前面的数差1

    #include<bits/stdc++.h>
    using namespace std;
    int main() {
    	long long n,q=0,x=0,j=1;//q为前值,x为变值。 
    	cin>>n;
    	for(int i=2; i<=n; i++) {
    		for(int o=2; o*o<=i; o++) {
    			if(i%o==0) {//判断质数。 
    				j=0;
    				break;
    			} 
    		}
    		if(j==0) {//如果是质数那么x++。 
    			x++;
    			j=1;
    		} 
    		else {
    			if(x>q){//x>q那么q就变成x。 
    				q=x;
    			}
    			x=0;//清0. 
    		}
    	}
    	if(x>q){
    		q=x;
    	} 
    	cout<<q;
    }
    

    程序中有重点解析,大家可以看看。

    • 1

    信息

    ID
    89
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    递交数
    17
    已通过
    4
    上传者