結果
問題 | No.662 スロットマシーン |
ユーザー |
![]() |
提出日時 | 2018-03-09 23:08:38 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 8 ms / 2,000 ms |
コード長 | 2,996 bytes |
コンパイル時間 | 1,340 ms |
コンパイル使用メモリ | 114,820 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-10 18:21:45 |
合計ジャッジ時間 | 2,235 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
ソースコード
#include <vector>#include <list>#include <map>#include <set>#include <deque>#include <stack>#include <bitset>#include <algorithm>#include <functional>#include <numeric>#include <utility>#include <sstream>#include <iostream>#include <iomanip>#include <cstdio>#include <cmath>#include <cstdlib>#include <cctype>#include <string>#include <cstring>#include <ctime>#include <queue>using namespace std;//conversion//------------------------------------------inline int toInt(string s) {int v; istringstream sin(s);sin>>v;return v;}template<class T> inline string toString(T x) {ostringstream sout;sout<<x;return sout.str();}//math//-------------------------------------------template<class T> inline T sqr(T x) {return x*x;}//typedef//------------------------------------------typedef vector<int> VI;typedef vector<VI> VVI;typedef vector<string> VS;typedef pair<int, int> PII;typedef long long LL;//container util//------------------------------------------#define ALL(a) (a).begin(),(a).end()#define RALL(a) (a).rbegin(), (a).rend()#define PB push_back#define MP make_pair#define SZ(a) int((a).size())#define EACH(i,c) for(typeof((c).begin()) i=(c).begin(); i!=(c).end(); ++i)#define EXIST(s,e) ((s).find(e)!=(s).end())#define SORT(c) sort((c).begin(),(c).end())//repetition//------------------------------------------#define FOR(i,a,b) for(int i=(a);i<(b);++i)#define REP(i,n) FOR(i,0,n)//constant//--------------------------------------------const double EPS = 1e-10;const double PI = acos(-1.0);//clear memory#define CLR(a) memset((a), 0 ,sizeof(a))//debug#define dump(x) cerr << #x << '=' << (x) << endl;#define debug(x) cerr << #x << '=' << (x) << '('<<'L' << __LINE__ << ')' << ' ' << __FILE__ << endl;int main(){map<string,LL> money;vector<string> name;REP(i,5){int n;string s;cin>>s>>n;name.push_back(s);money[s]=n;}int N1,N2,N3;multiset<string> A1,A2,A3;cin>>N1;//A1.resize(N1);REP(i,N1){string s;//cin>>A1[i];cin>>s;A1.insert(s);}cin>>N2;//A2.resize(N2);REP(i,N2){//cin>>A2[i];string s;//cin>>A1[i];cin>>s;A2.insert(s);}cin>>N3;//A3.resize(N3);REP(i,N3){//cin>>A3[i];string s;//cin>>A1[i];cin>>s;A3.insert(s);}vector<LL> num(5);//for(auto i :name)// for(auto j :name)// for(auto k :name)REP(i,SZ(name)){string n=name[i];num[i]=LL(LL(A1.count(n)*A2.count(n))*A3.count(n))*5LL;}LL NN=N1*N2*N3;double m=0;REP(i,SZ(name)){string n=name[i];m+=double(num[i])/double(N1)/double(N2)/double(N3)*double(money[n]);}//cout<<fixed<<(double)m/(double)NN<<endl;cout<<fixed<<m<<endl;REP(i,SZ(num)){cout<<num[i]<<endl;}}