文章

65

粉丝

25

获赞

637

访问

16.7k

头像
最长连续因子 题解:排序大法
P1020 贵州大学机试题
发布于2025年3月25日 16:03
阅读数 162

#include <bits/stdc++.h> 
using namespace std;
struct node{
    int shi;
    int chang;
}b[10001];
bool cmp(node a,node b){
    return a.chang>b.chang;
}
int main(){
    int n;
    cin>>n;
    int a[10001],cnt=0;
    for(int i=2;i<=n;i++){
        if(n%i==0){//是因子 
            a[cnt++]=i;//把所有因子找出来,转换为找最长连续子串 
        }
    }
//思路:记录长度和始址,以长度排序
    for(int i=0;i<cnt;i++) {//遍历数组,记录每一个位置的连续因子的长度 
        b[i].shi=i;
        b[i].chang=1;
        for(int j=i;j<cnt-1;j++) {//用于找到最长连续子串 
            if(a[j]==a[j+1]-1){
     &nb...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发