結果
問題 |
No.48 ロボットの操縦
|
ユーザー |
![]() |
提出日時 | 2019-07-25 09:47:20 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 854 bytes |
コンパイル時間 | 374 ms |
コンパイル使用メモリ | 28,800 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-02 05:57:07 |
合計ジャッジ時間 | 1,863 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 25 |
ソースコード
#include <stdio.h> int main(void){ int x, y, l; int cnt_turn = 0; int cnt_move = 0; scanf( "%d", &x ); scanf( "%d", &y ); scanf( "%d", &l ); int disx = ( x < 0 ) ? x * -1 : x; int disy = ( y < 0 ) ? y * -1 : y; // 向き変更 if( x == 0 && y >= 0 ){ // 直進のみ }else if( y >= 0 ){ cnt_turn += 1; }else{ cnt_turn += 2; } // x移動 if( disx == 0 ){ // 動かない }else if( disx <= l ){ cnt_move += 1; }else{ cnt_move += ( ( disx / l ) + ( disx % l == 0 ? 0 : 1 ) ); } // y移動 if( disy == 0 ){ // 動かない }else if( disy <= l ){ cnt_move += 1; }else{ cnt_move += ( ( disy / l ) + ( disy % l == 0 ? 0 : 1 ) ); } printf( "%d\n", cnt_turn + cnt_move ); }