結果
| 問題 | 
                            No.126 2基のエレベータ
                             | 
                    
| コンテスト | |
| ユーザー | 
                             bal4u
                         | 
                    
| 提出日時 | 2019-04-12 14:19:03 | 
| 言語 | C  (gcc 13.3.0)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 1 ms / 5,000 ms | 
| コード長 | 461 bytes | 
| コンパイル時間 | 1,251 ms | 
| コンパイル使用メモリ | 27,904 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-10-10 18:34:09 | 
| 合計ジャッジ時間 | 1,007 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge4 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 27 | 
ソースコード
// yukicoder: No.126 2基のエレベータ
// 2019.4.12 bal4u
#include <stdio.h>
#define ABS(a)  ((a)>=0?(a):-(a))
int main()
{
	int A, B, S, a, b, ans;
	scanf("%d%d%d", &A, &B, &S);
	a = ABS(A - S), b = ABS(B - S);
	if (S == 1) ans = a + 1;
	else if (a <= b) ans = a + S;
	else {
		if (S > A) {
			if (A == 0) ans = b + S + 1;
			else ans = b + S;
		}
		else if (a < S - 1) ans = a + b + A;
		else ans = A + b + S - 1;
	}
	printf("%d\n", ans);
	return 0;
}
            
            
            
        
            
bal4u