zoukankan      html  css  js  c++  java
  • HDU-1003-Max Sum

    题目链接

    题目大意就不讲了,看测试数据就可以看出来,

    这里主要是超时问题,对于超时问题我们可以减少循环,减枝,.......这里利用的是减少循环,

    我开始直接两个循环,超时。

    不用说两个循环只能说明你没思考,对于这题只要一个循环就可以了。

    直接看代码。

    AC代码

    #include<stdio.h>

    int a[100005];

    int main(void)
    {
    int t,n,i,j,k,k1,k2;
    int s,max;
    scanf("%d",&t);
    int h=1;
    while(t--)
    {
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
    scanf("%d",a+i);
    }
    k=1;
    max=-999999999;
    s=0;
    for(i=1;i<=n;i++)
    {
    s=s+a[i];
    if(s>max)
    {
    max=s;
    k1=k;
    k2=i;
    }
    if(s<0)
    {
    k=i+1;
    s=0;
    }
    }
    printf("Case %d: ",h++);
    printf("%d %d %d ",max,k1,k2);
    if(t)
    printf(" ");
    }
    return 0;
    }

    超时代吗

    #include<stdio.h>

     
    int main(void)
    {
        int t,a[100005],n,i,j,k1,k2,s,s1,h;
        scanf("%d",&t);
        h=t;
        while(t--)
        {
            scanf("%d",&n);
            for(i=0;i<n;i++)
            scanf("%d",&a[i]);
            s=-99999;
            k1=0;
            k2=0;
            for(i=0;i<n;i++)
            {
                s1=0;
                for(j=i;j<n;j++)
                {
                    s1=s1+a[j];
                    if(s1>s)
                    {
                        k1=j;
                        k2=i;
                        s=s1;
                    }
                }
            }
            printf("Case %d: ",h-t);
            printf("%d %d %d ",s,k2+1,k1+1);
        }
        return 0;
    }
  • 相关阅读:
    Markdown文字添加颜色
    深度学习基础——感知机
    Markdown插入表格语法
    卷积神经网络CNN学习笔记
    python 安装离线库
    无法定位程序输入点到xxx.dll
    XMind配置防火墙
    简书 markdown 代码高亮标记
    clion ctrl+鼠标左键不能调到函数实现
    D
  • 原文地址:https://www.cnblogs.com/liudehao/p/3988468.html
Copyright © 2011-2022 走看看