羅区P1328ビッグバンじゃんけんのバージョン(簡単なシミュレーション)

タイトル説明

、岩ははさみを獲得はさみ、布、布の勝利の石勝:じゃんけんは、一般的な指推測ゲームです。二人はその後、結果にかかわらず、同じパンチた場合。「ビッグバン」シーズン8では、じゃんけんゲームのアップグレード版の焦点がありました。

二つの新しいジェスチャーの追加に基づく伝統的なじゃんけんゲームに基づいてゲームのアップグレード版:

スポック:「スター・トレック」の主人公の一人。

トカゲ男:「スター・トレック」悪役。

Bに、表Aに列挙された表Iに示すような関係、の五のジェスチャ結果はゲームの結果です。

さて、小 A小 B指推測ゲームのこのアップグレード版をプレイしてみてください。これらは全て規則的な周期を打ち抜き知られているが、サイクル長に必ずしも等しくありません。たとえば、次の場合は小A、「石-布-ロック-はさみ-トカゲ-スポック、」 -布-ロック-はさみ-トカゲ-スポック-石66のパンチのサイクル長は、その後、彼は配列「は石であるパンチ-布-ロック-はさみ-トカゲ-スポック-......「とあれば小B」はさみ-石-布-スポック-トカゲ男「サイクルの長さは55のパンチで、その後、彼はパンチ「 -石-布-スポック-トカゲ男-はさみ-石-布-スポック-トカゲ-......ハサミ」シーケンスがあります

それは知られ小 Aおよび小 BNの合計実施のN回モーラを。すべての人は敗者が00ポイントを取得し、11ポイントを獲得するために、両方が00ポイントを持っていた描きます。今、あなたの統計は、N 、N、指推測ゲーム終了後に2回を獲得します。

入力形式

N、N_A、N_B、N回のモーラ、の合計表す:最初の行は三つの整数含ま小 Aサイクル長パンチ、小 Bパンチサイクル長を。番号と番号の間にスペースを持ちます。

二行目は、代表N_A整数含ま小 Aパンチの法則を、第三の線が表すN_B整数含ま小 Bパンチの法則。0「はさみ」、「ロック」1、2「布」を表し、「トカゲ男」、4 3は、「スポック」を示します。番号と番号の間にスペースを持ちます。

出力フォーマット

2つの整数を含む出力線は、それぞれ、スペースで区切られた小 A小 Bスコア。

サンプル入力と出力

入力#1

10 5 6
0 1 2 3 4
0 3 4 2 1 0

出力#1

6 2

入力#2

9 5 5
0 1 2 3 4
1 0 3 2 4

出力#2

4 4

説明/ヒント

データの100%、0 <N <= 200、0 <N_A <= 200、0 <N_B <= 200。

考え

シンプルなシミュレーション、

コード

(ロックウェル・バレーから問題の解決策)

#include <bits/stdc++.h>
using namespace std;
const int MAXN = 200 + 10;
int n, na, nb, a[MAXN], b[MAXN], cnta, cntb;
int vs[5][5] = {{0,0,1,1,0},{1,0,0,1,0},{0,1,0,0,1},{0,0,1,0,1},{1,1,0,0,0}}; //得分表的处理 
int main()
{
    cin >> n >> na >> nb;
    for(int i = 0; i < na; i++) cin >> a[i];
    for(int i = 0; i < nb; i++) cin >> b[i];
    for(int i = 0; i < n; i++)
    {
        cnta += vs[a[i % na]][b[i % nb]]; //周期循环 
        cntb += vs[b[i % nb]][a[i % na]];
    }
    cout << cnta << " " << cntb << endl;
    return 0;
}

おすすめ

転載: www.cnblogs.com/YY666/p/11360034.html