結果
| 問題 | No.662 スロットマシーン | 
| コンテスト | |
| ユーザー |  tetsuzuki1115 | 
| 提出日時 | 2018-04-26 17:35:48 | 
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 4 ms / 2,000 ms | 
| コード長 | 1,263 bytes | 
| コンパイル時間 | 820 ms | 
| コンパイル使用メモリ | 89,840 KB | 
| 実行使用メモリ | 6,944 KB | 
| 最終ジャッジ日時 | 2024-06-27 21:11:25 | 
| 合計ジャッジ時間 | 1,558 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 19 | 
ソースコード
#include <iostream>
#include <vector>
#include <string>
#include <cstring>
#include <math.h>
#include <cmath>
#include <limits.h>
#include <map>
#include <set>
#include <queue>
#include <algorithm>
#include <functional>
#include <stdio.h>
using namespace std;
long long MOD = 1000000007;
int main() {
    
    string S[5];
    int C[5];
    for ( int i = 0; i < 5; i++ ) {        
        cin >> S[i] >> C[i];
    }
    int N[3];
    vector< vector<long long> > A( 3, vector<long long>(5,0) );
    for ( int i = 0; i < 3; i++ ) {        
        cin >> N[i];
        for ( int j = 0; j < N[i]; j++ ) {
            string s;
            cin >> s;
            for ( int k = 0; k < 5; k++ ) {
                if ( S[k] == s ) { A[i][k]++; }
            }
        }
    }
    long long X[5] = {0};
    long long sum = 0;
    for ( int i = 0; i < 5; i++ ) {
        long long a = 1;
        for ( int j = 0; j < 3; j++ ) {
            a *= A[j][i];
        }
        X[i] = a*5;
        sum += X[i]*C[i];
    }
    long long n = 1;
    for ( int i = 0; i < 3; i++ ) {
        n *= N[i];
    }
 
    printf( "%.5f\n", static_cast<double>(sum) / static_cast<double>(n) );
    
    for ( int i = 0; i < 5; i++ ) {
        cout << X[i] << endl;
    }
    return 0;
}
            
            
            
        