1 solutions

  • 0
    @ 2025-3-3 16:33:48

    C :

    #include<stdio.h>
    #include<math.h>
    #include<string.h>
    struct ppppp
    {
        int sum;
        int k;
    } su[9999];
    int main ()
    {
        for(int i=0; i<9999; i++)
            su[i].sum=0;
        char p[999999];
        scanf("%s",p);
        int n=strlen(p);
        p[n]='*';
        int sum=0;
        int j=0;
        int flag=0,k;
        for(int i=0; i<=n; i++)
        {
            if(p[i]>='0'&&p[i]<='9')
            {
                if(flag==0)
                {
                    flag=1;
                    k=i+1;
                    sum=sum+p[i]-'0';
                    su[j].k=k;
                }
                else
                {
                    sum=sum*10+p[i]-'0';
                }
            }
            else
            {
                if(sum!=0)
                {
                    su[j].sum=sum;
                    j++;
                    sum=0;
                    flag=0;
                }
                else
                {
                    sum=0;
                    flag=0;
                }
            }
        }
        int maxx=-100;
        for(int i=0; i<j; i++)
        {
            if(su[i].sum>maxx)
            {
                maxx=su[i].sum;
                k=su[i].k;
            }
        }
        printf("%d",k);
        return 0;
    }
    

    Python :

    str1=input()
    max = "0"    # 存储值最大的数字
    string = "" # 将连续的数字拼接起来
    for i in range(1,len(str1)) :
        if str1[i-1].isdigit():
           string += str1[i-1]
        else:
           if string == "":
              continue;
           elif int(string) > int(max):
              max = string
              string = ""
    print(str1.find(max) + 1)
    
    • 1

    Information

    ID
    10716
    Time
    1000ms
    Memory
    16MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By