結果

問題 No.108 トリプルカードコンプ
ユーザー tails
提出日時 2023-02-24 18:41:24
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 641 bytes
コンパイル時間 5,477 ms
コンパイル使用メモリ 333,772 KB
最終ジャッジ日時 2025-02-10 20:15:09
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 20
権限があれば一括ダウンロードができます

ソースコード

diff #

#pragma GCC optimize("Ofast")
#pragma GCC target("avx2")

#include<bits/stdc++.h>
using namespace std;

#define e(a,b,c) _e[a+1][b+1][c+1]
#define rep(v,e) for(int v=0;v<e;++v)
#define rep3(v,s,e) for(int v=s;v<e;++v)

struct Hoge {
	double _e[102][102][102];
	constexpr Hoge():_e(){
		rep(i,101){
			rep3(j,i,101){
				rep3(k,j?:1,101){
					e(i,j,k)=(i*e(i-1,j,k)+(j-i)*e(i,j-1,k)+(k-j)*e(i,j,k-1)+1)/k;
				}
			}
		}
	}
};

constexpr Hoge h;

int main(){
	int n,c0=0,c1=0,c2=0;
	cin>>n;
	rep(i,n){
		int a;
		cin>>a;
		c0+=a<=0;
		c1+=a<=1;
		c2+=a<=2;
	}
	//cout<<n*h.e(c0,c1,c2);
	cout<<(int)(n*h.e(c0,c1,c2)*1e6)<<"e-6";
	return 0;
}
0