CSP 202006-2 희소 벡터//카테고리

10980 단어
제목은 간단합니다. 서버가 매우 느리게 달릴 것입니다. 1.968s/2s, 5e5의 데이터, 맵은 한 번에 2s를 원합니까?
/*   Author : Rshs   */
#include
using namespace std;
#define FI         first
#define SE         second
#define LL         long long
#define LDB        long double
#define MP         make_pair
#define PII        pair
#define SZ(a)      (int)a.size()
#define DB1(a)     cerr<
#define DB2(a,b)   cerr<
#define DB3(a,b,c) cerr<
const LDB pai = acos(-1.0L);
const LDB eps = 1e-10;
const LL  mod = 1e9+7;
const int MXN = 1e6+5;
inline int Add(int x,int y){return (x+=y)>=mod?x-mod:x;}
inline int Sub(int x,int y){return (x-=y)<0?x+mod:x;}
inline int Mul(int x,int y) {return 1LL*x*y%mod;}
inline int Pow(int x,LL  y){int res=1;while(y){if(y&1)res=1LL*res*x%mod;x=1LL*x*x%mod;y>>=1;}return res;}

map<int,int>ma;
int main(){
    int n,a,b;cin>>n>>a>>b;
    for(int i=1;i<=a;i++){
        int sa,sb;scanf("%d %d",&sa,&sb);
        ma[sa]=sb;
    }
    LL ans=0;
    for(int i=1;i<=b;i++){
        int sa,sb;scanf("%d %d",&sa,&sb);
        auto it=ma.find(sa);
        if(it!=ma.end()){
            ans=ans+(LL)sb*(LL)it->SE;
        }
    }
    cout<<ans<<'
'
; return 0; }

좋은 웹페이지 즐겨찾기