結果

問題 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
権限があれば一括ダウンロードができます

ソースコード

diff #

#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 );
    
}
0