提出 #2872662


ソースコード 拡げる

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		long sum = 0;
		long[] sums = new long[4];
		long[] a = new long[n];
		
		for(int i=0;i<n;i++) {
			long input = in.nextLong();
			sum = sum + input;
			a[i] = input;
		}
		
		long ave = sum/4;
		
		int[] lastIdx = new int[4];
		
		long min = Long.MAX_VALUE;
		
		for(int i=0;i<8;i++) {
			sums[0]=sums[1]=sums[2]=0;
			for(int j=0;j<3;j++) {
				if(j==0) lastIdx[j] = -1;
				else lastIdx[j] = lastIdx[j-1];
				if(((i>>j)&1)==0) {
					while(lastIdx[j]<n-2 && sums[j]+a[lastIdx[j]+1]<ave) {
						lastIdx[j]++;
						sums[j] = sums[j] + a[lastIdx[j]];
					}
				}else {
					while(lastIdx[j]<n-2 && sums[j]<ave) {
						lastIdx[j]++;
						sums[j] = sums[j] + a[lastIdx[j]];
					}
				}
			}
			sums[3] = sum - sums[0] - sums[1] - sums[2];
			long absDif = getAbsoluteDifference(sums);
			if(absDif<min) min=absDif;
		}
		System.out.println(min);
	}
	
	public static long getAbsoluteDifference(long[] sums) {
		long min = Math.min(Math.min(sums[0], sums[1]), Math.min(sums[2], sums[3]));
		long max = Math.max(Math.max(sums[0], sums[1]), Math.max(sums[2], sums[3]));
		return max - min;
	}

}

提出情報

提出日時
問題 D - Equal Cut
ユーザ kiyokiyo
言語 Java8 (OpenJDK 1.8.0)
得点 0
コード長 1306 Byte
結果 WA
実行時間 577 ms
メモリ 76668 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 600
結果
AC × 3
AC × 22
WA × 21
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt
ケース名 結果 実行時間 メモリ
sample_01.txt AC 93 ms 20820 KiB
sample_02.txt AC 93 ms 18900 KiB
sample_03.txt AC 94 ms 18900 KiB
subtask_1_01.txt AC 92 ms 19796 KiB
subtask_1_02.txt AC 561 ms 62684 KiB
subtask_1_03.txt AC 424 ms 48912 KiB
subtask_1_04.txt AC 494 ms 62828 KiB
subtask_1_05.txt WA 111 ms 19796 KiB
subtask_1_06.txt WA 279 ms 37336 KiB
subtask_1_07.txt AC 452 ms 50680 KiB
subtask_1_08.txt WA 366 ms 48728 KiB
subtask_1_09.txt AC 448 ms 52296 KiB
subtask_1_10.txt AC 480 ms 61372 KiB
subtask_1_11.txt AC 536 ms 71336 KiB
subtask_1_12.txt WA 384 ms 45880 KiB
subtask_1_13.txt WA 447 ms 54000 KiB
subtask_1_14.txt WA 305 ms 44864 KiB
subtask_1_15.txt AC 261 ms 41264 KiB
subtask_1_16.txt WA 391 ms 44516 KiB
subtask_1_17.txt WA 389 ms 46512 KiB
subtask_1_18.txt WA 160 ms 25296 KiB
subtask_1_19.txt WA 469 ms 62640 KiB
subtask_1_20.txt AC 577 ms 76384 KiB
subtask_1_21.txt AC 413 ms 45320 KiB
subtask_1_22.txt WA 387 ms 44360 KiB
subtask_1_23.txt AC 523 ms 58984 KiB
subtask_1_24.txt WA 532 ms 63600 KiB
subtask_1_25.txt WA 550 ms 63440 KiB
subtask_1_26.txt WA 546 ms 61772 KiB
subtask_1_27.txt AC 534 ms 63116 KiB
subtask_1_28.txt AC 540 ms 62644 KiB
subtask_1_29.txt WA 533 ms 63492 KiB
subtask_1_30.txt AC 545 ms 61604 KiB
subtask_1_31.txt WA 547 ms 64128 KiB
subtask_1_32.txt WA 540 ms 64336 KiB
subtask_1_33.txt WA 522 ms 64100 KiB
subtask_1_34.txt WA 496 ms 58920 KiB
subtask_1_35.txt WA 498 ms 60856 KiB
subtask_1_36.txt WA 510 ms 61468 KiB
subtask_1_37.txt AC 496 ms 76668 KiB