Submission #62539501


Source Code Expand

Copy
#include <iostream>
#include <vector>
#include <map>
#include <iomanip>
using namespace std;
using ll = long long;
int main(){
int N;
cin >> N;
// dice[i]
vector<map<int, int>> dice(N);
vector<int> K(N);
for (int i = 0; i < N; i++){
cin >> K[i];
for (int j = 0; j < K[i]; j++){
int x;
cin >> x;
dice[i][x]++;
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#include <iostream>
#include <vector>
#include <map>
#include <iomanip>
using namespace std;
using ll = long long;

int main(){
    int N;
    cin >> N;
    // dice[i]の各数値の出現回数を格納
    vector<map<int, int>> dice(N);
    vector<int> K(N);
    
    for (int i = 0; i < N; i++){
        cin >> K[i];
        for (int j = 0; j < K[i]; j++){
            int x;
            cin >> x;
            dice[i][x]++;
        }
    }
    
    double ans = 0;
    // 全ての組み合わせのサイコロ i, j について
    for (int i = 0; i < N; i++){
        for (int j = i+1; j < N; j++){
            double prob = 0;
            // dice[i] の全ての数値について、dice[j] にも現れるなら積を足す
            for (auto &p : dice[i]){
                int num = p.first;
                int cnt_i = p.second;
                if(dice[j].count(num)){
                    int cnt_j = dice[j][num];
                    prob += (double)cnt_i / K[i] * (double)cnt_j / K[j];
                }
            }
            if(prob > ans) ans = prob;
        }
    }
    
    cout << fixed << setprecision(9) << ans << endl;
    return 0;
}

Submission Info

Submission Time
Task D - Doubles
User una_o0
Language C++ 20 (gcc 12.2)
Score 400
Code Size 1204 Byte
Status AC
Exec Time 546 ms
Memory 8492 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 2
AC × 26
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, random_21.txt, random_22.txt, random_23.txt, random_24.txt, sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
random_01.txt AC 18 ms 3740 KiB
random_02.txt AC 18 ms 3748 KiB
random_03.txt AC 53 ms 7888 KiB
random_04.txt AC 68 ms 8168 KiB
random_05.txt AC 18 ms 3800 KiB
random_06.txt AC 18 ms 3720 KiB
random_07.txt AC 58 ms 8040 KiB
random_08.txt AC 64 ms 8016 KiB
random_09.txt AC 18 ms 3724 KiB
random_10.txt AC 18 ms 3784 KiB
random_11.txt AC 47 ms 7728 KiB
random_12.txt AC 59 ms 7900 KiB
random_13.txt AC 16 ms 3708 KiB
random_14.txt AC 43 ms 7404 KiB
random_15.txt AC 17 ms 3724 KiB
random_16.txt AC 39 ms 6696 KiB
random_17.txt AC 1 ms 3708 KiB
random_18.txt AC 17 ms 3804 KiB
random_19.txt AC 324 ms 8464 KiB
random_20.txt AC 68 ms 8336 KiB
random_21.txt AC 32 ms 8284 KiB
random_22.txt AC 17 ms 3720 KiB
random_23.txt AC 541 ms 8436 KiB
random_24.txt AC 546 ms 8492 KiB
sample_01.txt AC 1 ms 3740 KiB
sample_02.txt AC 1 ms 3592 KiB


2025-06-06 (Fri)
18:04:01 +09:00