結果
問題 |
No.126 2基のエレベータ
|
ユーザー |
![]() |
提出日時 | 2016-05-09 02:20:36 |
言語 | C90 (gcc 12.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 493 bytes |
コンパイル時間 | 186 ms |
コンパイル使用メモリ | 20,864 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-05 13:02:00 |
合計ジャッジ時間 | 889 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 WA * 2 |
コンパイルメッセージ
main.c:20:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 20 | main(){ | ^~~~ main.c: In function ‘main’: main.c:22:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 22 | scanf("%td%td%td\n", &A,&B,&S); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h> #include <stdlib.h> #include <stddef.h> #define int ptrdiff_t #define div lldiv #define div_t lldiv_t #define abs(a) ((a)<0?-(a):(a)) int A,B,S; int calc(void) { if (S == 1 || abs(A-S) <= abs(B-S)) return abs(A-S) + abs(S-0); if (A >= 1 && A < B) return abs(B-S) + abs(S-A) + abs(A); return abs(B-S) + abs(S-1) + abs(A-1) + abs(1-0); } main(){ int ans = 0; scanf("%td%td%td\n", &A,&B,&S); printf("%td\n", calc()); return 0; }