Submission #3445198


Source Code Expand

//set many funcs template
//Ver.20180717
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<stdbool.h>
#include<time.h>
#define inf 1072114514
#define llinf 4154118101919364364
#define mod 1000000007
#define pi 3.1415926535897932384

int max(int a,int b){if(a>b){return a;}return b;}
int min(int a,int b){if(a<b){return a;}return b;}
int zt(int a,int b){return max(a,b)-min(a,b);}
int round(int a,int b){if((a%b)*2 >= b){return (a/b)+1;}return a/b;}
int ceil(int a,int b){if(a%b==0){return a/b;}return (a/b)+1;}
int gcd(int a,int b){int c;while(b!=0){c=a%b;a=b;b=c;}return a;}
int lcm(int a,int b){int c=gcd(a,b);a/=c;return a*b;}
int nCr(int a,int b){int i,r=1;for(i=1;i<=b;i++){r*=(a+1-i);r/=i;}return r;}
int nHr(int a,int b){return nCr(a+b-1,b);}
int fact(int a){int i,r=1;for(i=1;i<=a;i++){r*=i;}return r;}
int pow(int a,int b){int i,r=1;for(i=1;i<=b;i++){r*=a;}return r;}
int dsum(int x){int r=0;while(x){r+=(x%10);x/=10;}return r;}
int dsumb(int x,int b){int r=0;while(x){r+=(x%b);x/=b;}return r;}
int sankaku(int x){return ((1+x)*x)/2;}
long long llmax(long long a,long long b){if(a>b){return a;}return b;}
long long llmin(long long a,long long b){if(a<b){return a;}return b;}
long long llzt(long long a,long long b){return llmax(a,b)-llmin(a,b);}
long long llround(long long a,long long b){if((a%b)*2 >= b){return (a/b)+1;}return a/b;}
long long llceil(long long a,long long b){if(a%b==0){return a/b;}return (a/b)+1;}
long long llgcd(long long a,long long b){long long c;while(b!=0){c=a%b;a=b;b=c;}return a;}
long long lllcm(long long a,long long b){long long c=llgcd(a,b);a/=c;return a*b;}
long long llnCr(long long a,long long b){long long i,r=1;for(i=1;i<=b;i++){r*=(a+1-i);r/=i;}return r;}
long long llnHr(long long a,long long b){return llnCr(a+b-1,b);}
long long llfact(long long a){long long i,r=1;for(i=1;i<=a;i++){r*=i;}return r;}
long long llpow(long long a,long long b){long long i,r=1;for(i=1;i<=b;i++){r*=a;}return r;}
long long lldsum(long long x){long long r=0;while(x){r+=(x%10);x/=10;}return r;}
long long lldsumb(long long x,long long b){long long r=0;while(x){r+=(x%b);x/=b;}return r;}
long long llsankaku(long long x){return ((1+x)*x)/2;}
double dbmax(double a,double b){if(a>b){return a;}return b;}
double dbmin(double a,double b){if(a<b){return a;}return b;}
double dbzt(double a,double b){return dbmax(a,b)-dbmin(a,b);}
int sortfncsj(const void *a,const void *b){if(*(int *)a>*(int *)b){return 1;}if(*(int *)a==*(int *)b){return 0;}return -1;}
int sortfnckj(const void *a,const void *b){if(*(int *)a<*(int *)b){return 1;}if(*(int *)a==*(int *)b){return 0;}return -1;}
int llsortfncsj(const void *a,const void *b){if(*(long long *)a>*(long long *)b){return 1;}if(*(long long *)a==*(long long *)b){return 0;}return -1;}
int llsortfnckj(const void *a,const void *b){if(*(long long *)a<*(long long *)b){return 1;}if(*(long long *)a==*(long long *)b){return 0;}return -1;}
int dbsortfncsj(const void *a,const void *b){if(*(double *)a>*(double *)b){return 1;}if(*(double *)a==*(double *)b){return 0;}return -1;}
int dbsortfnckj(const void *a,const void *b){if(*(double *)a<*(double *)b){return 1;}if(*(double *)a==*(double *)b){return 0;}return -1;}
int strsortfncsj(const void *a,const void *b){return strcmp((char *)a,(char *)b);}
int strsortfnckj(const void *a,const void *b){return strcmp((char *)b,(char *)a);}

void shuffledget(int x[],int n){
    srand(time(0));
    int i,b[524288],p,c;
    for(i=0;i<n;i++){
        b[i]=i;
    }
    for(i=n;i>=1;i--){
        p=rand()%i;
        c=b[i-1];b[i-1]=b[p];b[p]=c;
    }
    for(i=0;i<n;i++){
        scanf("%d",&x[b[i]]);
    }
}

int dx4[4]={1,-1,0,0};
int dy4[4]={0,0,1,-1};
int dx8[8]={-1,-1,-1,0,0,1,1,1};
int dy8[8]={-1,0,1,-1,1,-1,0,1};

int search(int x,int a[],int n){
    int st=0,fi=n-1,te;
    while(st<=fi){
        te=(st+fi)/2;
        if(a[te]<x){st=te+1;}else{fi=te-1;}
    }
    return st;
}

typedef struct{
int val;
int node;
}sd;

int sdsortfnc(const void *a,const void *b){
if(((sd*)a)->val < ((sd*)b)->val){return -1;}
if(((sd*)a)->val > ((sd*)b)->val){return 1;}
return 0;
}

long long bit[524288]={0},bsize=524288;
long long sum(long long i){
    long long s=0;
    while(i>0){
        s+=bit[i];
        i-=i&(-i);
    }
    return s;
}
void add(long long i,long long x){
    while(i<=bsize){
        bit[i]+=x;
        i+=i&(-i);
    }
}

int main(void){
    long long res,i,j,n,m,k,a[524288],b,c,h,w,r=llinf,l,t;
    long long m1[524288]={0};
    long long m2[524288]={0};
    double d;
    char s[524288];
    scanf("%lld",&n);
    res=0;
    for(i=1;i<=n;i++){
        scanf("%lld",&a[i]);
        if(a[i]==n){t=i;}
        res+=(i-1)-sum(a[i]);
        m1[i]=res;
        add(a[i],1);
    }
    for(i=0;i<bsize;i++){bit[i]=0;}
    res=0;
    for(i=n;i>=1;i--){
        res+=(n-i)-sum(a[i]);
        m2[i]=res;
        add(a[i],1);
    }
    for(i=1;i<=n;i++){
        if(i<t){
            r=llmin(r,m1[i-1]+m2[i]);
        }
        if(i==t){
            r=llmin(r,m1[i-1]+m2[i+1]);
        }
        if(t<i){
            r=llmin(r,m1[i]+m2[i+1]);
        }
    }
    printf("%lld\n",r);
    return 0;
}

Submission Info

Submission Time
Task C - 積み木
User physics0523
Language C (GCC 5.4.1)
Score 0
Code Size 5271 Byte
Status WA
Exec Time 23 ms
Memory 16512 KB

Compile Error

./Main.c:16:5: warning: conflicting types for built-in function ‘round’
 int round(int a,int b){if((a%b)*2 >= b){return (a/b)+1;}return a/b;}
     ^
./Main.c:17:5: warning: conflicting types for built-in function ‘ceil’
 int ceil(int a,int b){if(a%b==0){return a/b;}return (a/b)+1;}
     ^
./Main.c:23:5: warning: conflicting types for built-in function ‘pow’
 int pow(int a,int b){int i,r=1;for(i=1;i<=b;i++){r*=a;}return r;}
     ^
./Main.c:30:11: warning: conflicting types for built-in function ‘llround’
 long long llround(long long a,long long b){if((a%b)*2 >= b){return (a/b)+1;}return a/b;}
           ^
./Main.c: In function ‘shuffledget’:
./Main.c:64:9: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&x[b[i]]);
         ^
./Main.c: In function ‘main’:
./Main.c:115:5: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%lld",&n);
     ^
./Main.c:118:9: warning: ign...

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 0 / 30 0 / 70
Status
AC × 3
AC × 13
WA × 20
AC × 14
WA × 54
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
Subtask1 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 10_small_00.txt, 10_small_01.txt, 10_small_02.txt, 10_small_03.txt, 10_small_04.txt, 10_small_05.txt, 10_small_06.txt, 10_small_07.txt, 10_small_08.txt, 10_small_09.txt, 10_small_10.txt, 10_small_11.txt, 10_small_12.txt, 10_small_13.txt, 10_small_14.txt, 10_small_15.txt, 10_small_16.txt, 10_small_17.txt, 10_small_18.txt, 10_small_19.txt, 10_small_20.txt, 10_small_21.txt, 10_small_22.txt, 10_small_23.txt, 10_small_24.txt, 10_small_25.txt, 10_small_26.txt, 10_small_27.txt, 10_small_28.txt, 10_small_29.txt
Subtask2 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 10_small_00.txt, 10_small_01.txt, 10_small_02.txt, 10_small_03.txt, 10_small_04.txt, 10_small_05.txt, 10_small_06.txt, 10_small_07.txt, 10_small_08.txt, 10_small_09.txt, 10_small_10.txt, 10_small_11.txt, 10_small_12.txt, 10_small_13.txt, 10_small_14.txt, 10_small_15.txt, 10_small_16.txt, 10_small_17.txt, 10_small_18.txt, 10_small_19.txt, 10_small_20.txt, 10_small_21.txt, 10_small_22.txt, 10_small_23.txt, 10_small_24.txt, 10_small_25.txt, 10_small_26.txt, 10_small_27.txt, 10_small_28.txt, 10_small_29.txt, 20_rand_00.txt, 20_rand_01.txt, 20_rand_02.txt, 20_rand_03.txt, 20_rand_04.txt, 20_rand_05.txt, 20_rand_06.txt, 20_rand_07.txt, 20_rand_08.txt, 20_rand_09.txt, 20_rand_10.txt, 20_rand_11.txt, 20_rand_12.txt, 20_rand_13.txt, 20_rand_14.txt, 20_rand_15.txt, 20_rand_16.txt, 20_rand_17.txt, 20_rand_18.txt, 20_rand_19.txt, 20_rand_20.txt, 20_rand_21.txt, 20_rand_22.txt, 20_rand_23.txt, 20_rand_24.txt, 20_rand_25.txt, 20_rand_26.txt, 20_rand_27.txt, 20_rand_28.txt, 20_rand_29.txt, 30_max_0.txt, 30_max_1.txt, 30_max_2.txt, 30_max_3.txt, 30_max_4.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 4 ms 12800 KB
00_sample_01.txt AC 4 ms 13952 KB
00_sample_02.txt AC 4 ms 13568 KB
10_small_00.txt WA 4 ms 13824 KB
10_small_01.txt AC 4 ms 12800 KB
10_small_02.txt WA 3 ms 12544 KB
10_small_03.txt WA 4 ms 12928 KB
10_small_04.txt WA 4 ms 13056 KB
10_small_05.txt WA 3 ms 12928 KB
10_small_06.txt AC 4 ms 14208 KB
10_small_07.txt WA 4 ms 13568 KB
10_small_08.txt WA 4 ms 13056 KB
10_small_09.txt WA 4 ms 12928 KB
10_small_10.txt AC 3 ms 12544 KB
10_small_11.txt WA 4 ms 14336 KB
10_small_12.txt AC 4 ms 13568 KB
10_small_13.txt WA 3 ms 12928 KB
10_small_14.txt WA 4 ms 13312 KB
10_small_15.txt AC 4 ms 13952 KB
10_small_16.txt AC 5 ms 14208 KB
10_small_17.txt AC 4 ms 13568 KB
10_small_18.txt WA 3 ms 13056 KB
10_small_19.txt AC 4 ms 14208 KB
10_small_20.txt WA 4 ms 14080 KB
10_small_21.txt AC 4 ms 14336 KB
10_small_22.txt AC 4 ms 13952 KB
10_small_23.txt WA 3 ms 12800 KB
10_small_24.txt WA 3 ms 12544 KB
10_small_25.txt WA 4 ms 13568 KB
10_small_26.txt WA 4 ms 13312 KB
10_small_27.txt WA 4 ms 12928 KB
10_small_28.txt WA 4 ms 14080 KB
10_small_29.txt WA 4 ms 13056 KB
20_rand_00.txt WA 16 ms 13952 KB
20_rand_01.txt WA 5 ms 12928 KB
20_rand_02.txt WA 8 ms 13568 KB
20_rand_03.txt WA 10 ms 16512 KB
20_rand_04.txt WA 16 ms 13056 KB
20_rand_05.txt WA 21 ms 13440 KB
20_rand_06.txt WA 22 ms 14208 KB
20_rand_07.txt WA 16 ms 13440 KB
20_rand_08.txt WA 7 ms 13056 KB
20_rand_09.txt WA 6 ms 12800 KB
20_rand_10.txt WA 16 ms 13696 KB
20_rand_11.txt WA 9 ms 14080 KB
20_rand_12.txt WA 9 ms 13952 KB
20_rand_13.txt WA 11 ms 13440 KB
20_rand_14.txt WA 8 ms 13312 KB
20_rand_15.txt WA 5 ms 12672 KB
20_rand_16.txt WA 12 ms 13952 KB
20_rand_17.txt WA 5 ms 13440 KB
20_rand_18.txt WA 23 ms 13696 KB
20_rand_19.txt WA 8 ms 13312 KB
20_rand_20.txt WA 7 ms 13312 KB
20_rand_21.txt WA 16 ms 12928 KB
20_rand_22.txt WA 16 ms 13952 KB
20_rand_23.txt WA 22 ms 14336 KB
20_rand_24.txt WA 12 ms 13696 KB
20_rand_25.txt WA 13 ms 14464 KB
20_rand_26.txt WA 10 ms 13440 KB
20_rand_27.txt WA 11 ms 14208 KB
20_rand_28.txt WA 19 ms 16512 KB
20_rand_29.txt WA 6 ms 13696 KB
30_max_0.txt AC 21 ms 16512 KB
30_max_1.txt WA 21 ms 16512 KB
30_max_2.txt WA 21 ms 16512 KB
30_max_3.txt WA 20 ms 13568 KB
30_max_4.txt WA 21 ms 14464 KB