C/C++の宿題を片付けます 103代目 at TECH
[2ch|▼Menu]
209:デフォルトの名無しさん
08/01/18 16:20:22
>>208 B_2
#include <stdio.h>
#define N 20

void place_queen(int *x, int n, int k)
{
    int i, j;
    if(k == n){
        for(i = 0; i < n; i++)
            printf("%d ", x[i]);
        putchar('\n');
        return;
    }
    for(i = 0; i < n; i++){
        for(j = 0; j < k; j++)
            if(i == x[j] || k - j == i - x[j] || k - j == x[j] - i)
                break;
        if(j == k){
            x[k] = i;
            place_queen(x, n, k + 1);
        }
    }
}

int main(void)
{
    int n, x[N];
    printf("Input n : ");
    scanf("%d", &n);
    place_queen(x, n, 0);
    return 0;
}


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4959日前に更新/357 KB
担当:undef