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 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c