题意:给你一堆货币汇率,再给你一堆货币,算下值多少钱;
思路:直接map搞定;
#include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<map> using namespace std; int main() { int n,c; int t; char s[1000]; double ans,temp; scanf("%d",&t); while(t--) { map<string,double>money; ans=0; scanf("%d%d",&c,&n); for(int i=0;i<c;i++) { scanf("%s",s); scanf("%lf",&temp); money[s]=temp; } money["JD"]=1; for(int i=0;i<n;i++) { scanf("%lf",&temp); scanf("%s",s); ans=ans+money[s]*temp; } printf("%.6lf\n",ans); } return 0; }