rgdggf 2021-08-14 21:42 采纳率: 80%
浏览 155
已结题

求和为k的最长子序列 c语言

给定一个序列,求和为k的最长子序列和最长子序列长度,c语言帮忙提供一个算法

输入一个序列,如: 1,5,6,4,2,3
输入一个整数,如:7
输出:
1 4 2
3

上述例子和为7的子序列有1,4,2 和 3,4 和 2,5 和 1,6
最长子序列为1,4,2,长度为3
如果没有和等于7的序列,则返回null

  • 写回答

1条回答 默认 最新

  • soar3033 2021-08-14 22:45
    关注
    
    #include <stdio.h>
    #include <math.h>
    
    int main()
    {
        int input[100]{0};
        char in;
        int n=0;
        int tar=0;
        int k = 0;
        while ((in=getchar())!='\n')
        {
            if (in!=',')
            {
                input[n] *=10;
                input[n] += (in-48);
            }
            else
            {
                n++;
            }
        }
        while ((in = getchar()) != '\n')
        {
                tar*= 10;
                tar+= (in - 48);
        }
        int len=0;
        int v=NULL;
        int st = 0;
        for (int i = 0; i < (1<<n); i++)
        {
            int tmp = 0;
            int tmp_count = 0;
            for (int j = 0; j < n; j++)
            {
                if ((st>>j)&0x01)
                {
                    tmp += input[j];
                    tmp_count++;
                }
            }
            if (tmp==tar)
            {
                if (tmp_count>len)
                {
                    len = tmp_count;
                    v = st;
                }
            }
            st++;
        }
        if (v!=NULL)
        {
            for (int i = 0; i < n; i++)
            {
                if ((v >> i) & 0x01)
                {
                    printf("%d ", input[i]);
                }
            }
            printf("\n%d", len);
        }
        else
        {
            printf("null");
        }
    }
    
    
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月23日
  • 已采纳回答 8月15日
  • 赞助了问题酬金 8月14日
  • 创建了问题 8月14日

悬赏问题

  • ¥15 Macbookpro 连接热点正常上网,连接不了Wi-Fi。
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析