結果

問題 No.126 2基のエレベータ
ユーザー uafr_csuafr_cs
提出日時 2015-09-02 18:34:46
言語 Java
(openjdk 23)
結果
AC  
実行時間 135 ms / 5,000 ms
コード長 808 bytes
コンパイル時間 2,774 ms
コンパイル使用メモリ 74,936 KB
実行使用メモリ 54,288 KB
最終ジャッジ日時 2024-10-10 18:27:31
合計ジャッジ時間 7,117 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 27
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Scanner;
import java.util.Set;

public class Main {
	
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		
		final int A = sc.nextInt();
		final int B = sc.nextInt();
		final int S = sc.nextInt();
		
		if(S == 1){ // always A
			System.out.println(Math.abs(1 - A) + 1);
		}else{
			final int SA_dist = Math.abs(A - S);
			final int SB_dist = Math.abs(B - S);
			
			if(SA_dist <= SB_dist){ // near A
				System.out.println(SA_dist + S);
			}else{ // near B
				if(A != 0){
					System.out.println(SB_dist + Math.min(SA_dist + A, S - 1 + A));
				}else{
					System.out.println(SB_dist + S - 1 + 2);
				}
				
				//System.out.println(SB_dist + (A - 1) + S);
			}
			
		}
		
	}
	
}
0