結果

問題 No.1822 Keima of Shogi
ユーザー mannshi222jp
提出日時 2022-01-28 21:43:56
言語 C
(gcc 13.3.0)
結果
RE  
実行時間 -
コード長 1,450 bytes
コンパイル時間 1,556 ms
コンパイル使用メモリ 29,952 KB
実行使用メモリ 376,704 KB
最終ジャッジ日時 2024-12-30 05:55:55
合計ジャッジ時間 4,729 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 RE * 1
other AC * 6 RE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <stdio.h>
#include <stdlib.h>

int cnt = 0;

int setnext( int **, int, int, int );

int main()
{
        int N;
        scanf( "%d\n", &N );

        int **masu;

        masu = ( int **) malloc( sizeof(int *)* N );
        for( int i = 0; i < N; i++ ) {
                masu[i] = ( int *) malloc( sizeof(int *)* N );
        }

        for( int i = 0; i < N; i ++ ) {
                for( int j = 0; j < N; j++ ) {
                        masu[i][j] = 0;
                }
        }

        int i,j;
        i = N -1;
        j = (N -1 )/2;
        masu[i][j] = 1;
        cnt++;
        setnext( masu, N, i, j );

        printf("%d\n", cnt );

        return 0;
}


int setnext( int **masu, int N, int i, int j ) {
        int nexti, nextj;
        nexti = i-2;
        nextj = j-1;

        if( nexti < N && nexti >=0 &&
                nextj < N && nextj >=0 ) {
                if( masu[nexti][nextj] == 0 ) {
                        masu[nexti][nextj] = 1;
                        cnt++;
                        setnext( masu, N, nexti, nextj );

                }
        }


        nexti = i-2;
        nextj = j+1;
        if( nexti < N && nexti >=0 &&
                nextj < N && nextj >=0 ) {
                if( masu[nexti][nextj] == 0 ) {
                        masu[nexti][nextj] = 1;
                        cnt++;
                        setnext( masu, N, nexti, nextj );
                }
        }

        return 0;
}
0