Submission #2378344


Source Code Expand

#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<iostream>
#include<math.h>
#include<queue>
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 20123
#define inf 123456789
#define LL long long
#define big 1e18
using  namespace std;
int max(int a,int b){ return a>b?a:b;}
int maxn (int a,int b,int c){return max(max(a,b),max(b,c));}
LL min(LL a,LL b){return a<b?a:b;}
LL minn,a[200005],pre[200005],sum1=0;
LL dfs(LL l,LL r)
{
    if(r==l){
        minn=min(a[l],min(minn,a[r]));
        sum1+=minn;
        return ;
    }
    else {
        LL mid=(r+l)/2;
        dfs(mid+1,r);
        dfs(l,mid);
    }
}
int main()
{
    LL n,i,j;
    scanf("%lld",&n);
    for(i=1;i<=n;i++)
        scanf("%lld",&a[i]);
    for(i=n;i>0;i--)
    {
         minn=big;
         sum1=0;
         dfs(1,i);
         pre[i]=sum1;
    }
    LL sum=0;
    for(i=1;i<=n;i++)
        sum+=pre[i];
    printf("%lld\n",sum);
    return 0;
}

Submission Info

Submission Time
Task B - Minimum Sum
User luogu_bot1
Language C++ (GCC 5.4.1)
Score 0
Code Size 979 Byte
Status CE

Compile Error

./Main.cpp: In function ‘long long int dfs(long long int, long long int)’:
./Main.cpp:22:9: error: return-statement with no value, in function returning ‘long long int’ [-fpermissive]
         return ;
         ^
./Main.cpp: In function ‘int main()’:
./Main.cpp:33:21: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%lld",&n);
                     ^
./Main.cpp:35:28: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%lld",&a[i]);
                            ^