输出卡死求助

P1167 刷题

JackYTY @ 2024-09-27 20:51:36

#include<bits/stdc++.h>
#define l 16
using namespace std;
int main(){
    int k;
    cin>>k;
    int c[k];
    for(int i=0;i<k;i++)
    {
        cin>>c[i]; 
     }
    string a;
    string b;
    cin>>a;
    cin>>b;
    a[4]='0';a[7]='0';a[10]='0';a[13]='0'; 
     b[4]='0';b[7]='0';b[10]='0';b[13]='0';
    int A[l],B[l]={0};
    for(int i=0;i<l;i++) 
        A[i]=a[l-1-i]-'0';
    for(int i=0;i<l;i++)
        B[i]=b[l-1-i]-'0';//字符串转数组 
//___________________________________________________________________________________    
    int n[4];
     int n1[4];
     int y[2];
     int y1[2];
     int r[2];
     int r1[2];
     int f[2];
     int f1[2];
     int m[2];
     int m1[2];
    for(int i=0;i<l;i++){
        if(i>=0&&i<4){
            a[i]=n[i];
            b[i]=n1[i];
        }
        else if(i>4&&i<7){
            a[i]=y[i];
            b[i]=y1[i];
        }
        else if(i>7&&i<9){
            a[i]=r[i];
            b[i]=r1[i];
        }
        else if(i>9&&i<11) {
            a[i]=f[i];
            b[i]=f1[i];
        }
        else if(i>11&&i<13) {
            a[i]=m[i];
            b[i]=m1[i];
        }
        else
        {
            i++;
          }
    }//提取年数组 
//___________________________________________________________________________________

    int nian,nian1,yue,yue1,ri,ri1,fen,fen1,miao,miao1=0;
    nian+=n[0]*1000;nian+=n[1]*100;nian+=n[2]*10; nian+=n[3];nian1+=n1[0]*1000;nian1+=n1[1]*100;nian1+=n1[2]*10;nian1+=n1[3];
    yue+=y[0]*10;yue+=y[1];yue1+=y1[0]*10;yue1+=y1[1];
    ri+=r[0]*10;ri+=r[1];ri1+=r1[0]*10; ri1+=r1[1];
    fen+=f[0]*10;fen+=f[1];fen1+=f1[0]*10;fen1+=f1[1];
    miao+=m[0]*10;miao+=m[1];miao1+=m1[0]*10;miao1+=m1[1];//测出具体值 
//___________________________________________________________________________________
    unsigned long long ans,ans1=0;
    for(int i=0;i<nian;i++)
    {
        if(i%4==0&&i%100!=0)
        {
            ans+=366;
         }
         else if(i%400==0)
         {
            ans+=366;
         }
         else
         {
            ans+=365;
         }
     }
     for(int i=0;i<yue;i++)
     {
        if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
        {
            ans+=31;
         }
         else if(i==2)
         {
            ans+=28;
         }
         else
         {
            ans+=30;
         }
     }
    for(int i=0;i<ri;i++)
    {
            ans++;
     }
     ans=ans*86400;
     ans+=(fen*60);
     ans+=miao;
     for(int i=0;i<nian1;i++)
    {
        if(i%4==0&&i%100!=0)
        {
            ans1+=366;
         }
         else if(i%400==0)
         {
            ans1+=366;
         }
         else
         {
            ans1+=365;
         }
     }
     for(int i=0;i<yue1;i++)
     {
        if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
        {
            ans1+=31;
         }
         else if(i==2)
         {
            ans1+=28;
         }
         else
         {
            ans1+=30;
         }
     }
    for(int i=0;i<ri1;i++)
    {
            ans1++;
     }
     ans1=ans1*86400;
     ans1+=(fen1*60);
     ans1+=miao1;
/*  =================================================================================
====================================================================================     
====================================================================================
==================================================================================*/
    sort(c+0,c+k-1);
    int z=0;
    unsigned long long x=ans-ans1;
    for(int i=0;i<k;i++)
    {
        if(x-a[i]>=0)
        {
            x-=a[i];
            z++;
        }
        else
        {
            cout<<z;
            return 0;
        }
    }    
    return 0;
}

by JackYTY @ 2024-09-27 20:53:22

![](屏幕截图 2024-09-27 205239)


by JackYTY @ 2024-09-27 20:55:12

大婶蒟蒻的代码 又臭又长···


|