doublecheck ing 2021-11-17 22:19 采纳率: 100%
浏览 238
已结题

k型好数列怎么写??

一个长度大于等于2的数列,且其中任
意两个元素Ai和Aj(i≠j)的和Ai+Aj都能整除K,我们称其为K型好数列。
现在输入一个长度为N的数列A=[A1,A2,...AN]以及一个整数K,请你找出A的最长的K型好数列B,输出B的长度。
如果这样的子数组不存在,输出-1.
输入格式
第一行包含两个整数N和K.
第二行包含N个整数A1,A2,...AN.
1≤N≤100000
1≤Ai, K≤1000000000
输出格式
一个整数,表示答案。

  • 写回答

1条回答 默认 最新

  • CSDN专家-风起峰落 2021-11-17 22:41
    关注
    
    
    #include<stdio.h>
    #include<stdlib.h>
    int main()
    {
        int n,k;
        int A[100000];
        int temp[100000],len=0,max_len=-1;
        scanf("%d %d",&n,&k);
        for(int i=0;i<n;++i)
        {
            scanf("%d",&A[i]);
        }
        
        for(int i=0;i<n-1;++i)
        {
            int j=i+1;
            for(j=i+1;j<n;++j)
            {
                if(k%(A[i]+A[j])==0)
                {
                    temp[len++]=A[i];
                    temp[len++]=A[j];
                    break;
                }
            }
            
            for(int q=0;q<n;++q)
            {
                if(q==i || q==j)
                    continue;
                
                int p=0;
                for(p=0;p<len;++p)
                {
                    if(k%(temp[p]+A[q])!=0)
                        break;
                }
                if(p>=len)
                {
                    temp[len++]=A[q];
                }
            }
            if(len>0 && len>max_len)
            {
                max_len = len;
            }
        }
        printf("%d",max_len);
        
        return 0;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月28日
  • 已采纳回答 11月20日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀