!!Problem A: Hanafuda Shuffle 花札を切る カードを切るシミュレーションの問題。カードの枚数と、切る回数が指定される。切る操作は、カードの山の上からp枚目から連続したc枚を抜き取り、山の一番上に置く。 !入力 *まず、カードの枚数nと切る回数r。nとrに0が入力されたら全ての操作を終了する。 *続いてr回の切る操作のpとc。 !出力 *切る操作をした結果、1番上に来たカードの番号を表示する。カードの山には一番下から1,2,3,・・・,nと番号が付いている。 !データ構造 配列を用いる。 !解答例 *方法1:山を表す配列と、コピー用の配列の2つ用意しておき、コピーする分をコピー遙拝列に置いておいて、残りを移動してから、上書きする。 **解答例 [[2004da1.c]] *方法2:配列は1つだけで、p枚目を一番上に持っていく、p+1枚目を上に持って行く、p+2枚目を・・・をc枚分繰り返せばよい。 **解答例 ***C言語 [[2004da2.c]] ***Java [[hana1.java]] Javaは入力が面倒だ。 問題の意味と入力データの意味を理解し、配列を使うときに添え字の番号を間違えなければ、素直に解けるでしょう。