Nは2以上とする。1からNまでの数字が一つずつ書かれたNマイのカードを1セットとして白色のセットAと黒色のセットBがあるセットAは昇順に並べ、セットBは、すべてのi(1<=i<=N)においてセットAのi番目の数字a[i]とセットBのi番目の数字b[i]が異なるとする。
#include <stdio.h>
#define N 4
int setb(int *idx,char *a,char *b){
int i;
for(i=0;i<N;i++){
b[i]='0'+idx[i-1];
if(a[i]==b[i]){return 0;}
}
return 1;
}
int main(void)
{
int i,;
int idx[N];
char a[N+2], b[N+2];
a[0] = b[0] = ' '; a[N+1]=b[N+1] = 0;
for(idx[0]=1;idx[0]<=N;idx[0]++){
for(idx[1]=1;idx[1]<=N;idx[1]++){
if(idx[0]==idx[1])continue;
for(idx[2]=1;idx[2]<=N;idx[2]++){
①
for(idx[3]=1;idx[3]<=N;idx[3]++){
②
if(setb(idx,a,b)) {printf("%s\n",b);}
}
}
}
}
return 0;
}
①と②に当てはまるコードを書け
実行した時の出力を書け
わかる方お願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
N=4として、
>1からNまでの数字が一つずつ書かれたNマイのカードを1セット
>セットAは昇順に並べ
より、Aは1234に特定される。
>すべてのi(1<=i<=N)においてセットAのi番目の数字a[i]とセットBのi番目の数字b[i]が異なる
より、Bは1~4の組み合わせで、Aと一致しない(例:2341,2413,…)を出力する
――ってことで良いのかな。
Cじゃなくて、Pythonとかrubyとか使ったほうが楽ですよ。
N=4;a=(1..N).to_a;a.permutation.to_a.each{|b| puts b.join('') unless [a,b].transpose.any?{|a,b|a==b}}
2143
2341
2413
3142
3412
3421
4123
4312
4321
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
2の補数を計算するプログラム
-
intとlongは同じ?
-
線形補間法プログラム(C++)
-
OpenCVによる4値化について
-
条件が多い場合
-
C言語 サイコロ 2つの値を返せない
-
C言語でDOS画面のプログラム(...
-
乱数で交互に偶数、奇数が、、、。
-
Cプログラムによる画像の高速フ...
-
C言語でテーブル引きしたら速度...
-
2÷3などの余りについて
-
マイナスからプラスへ転じた時...
-
CTRL+Dでループを抜けるには
-
「指定されたキャストは有効で...
-
ある商品のロス率を5%見込み、...
-
変数とパラメータとは違うもの...
-
プログラムでの数字につく”f”の...
-
信頼区間の1.96や1.65ってどこ...
-
C言語での引数の省略方法
-
CStringのFindで文字列検索を行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
intとlongは同じ?
-
2の補数を計算するプログラム
-
再起呼び出しの回数をカウント...
-
C++ bmp 透過処理
-
OpenCVによる4値化について
-
カードシャッフルのブログラム...
-
C言語で%を使わない余りの出し方
-
argvのNULLチェック
-
コマンドプロンプトのウィンド...
-
関数とビット列
-
分数の足し算をさせるプログラ...
-
ヌメロンのプログラム
-
whileとifを使い偶数を出すには
-
迷路を脱出する経路探索プログ...
-
プログラミングに関して
-
C言語で簡単なパックマンゲーム...
-
C++で表を作成したいのです ...
-
| (or) を使った関数の引数の作...
-
条件が多い場合
-
複数の共有メモリの作成
おすすめ情報