后四个点WA

P3613 【深基15.例2】寄包柜

Gril @ 2022-10-08 16:03:57

有人能帮我看下吗

#include <bits/stdc++.h>
using namespace std;
int n,q;
map<pair<int,int>,int> m;
int main()
{
    cin >> n >> q;
    for(int t = 1;t <= q;t++)
    {
        int c,i,j,k;
        cin >> c;
        switch(c)
        {
        case 1:
            cin >> i >> j >> k;
            m.insert({make_pair(i ,j),k});
            break;
        case 2:
            cin >> i >> j;
            printf("%d\n",m[make_pair(i ,j)]);
            break;
        }
    }
    return 0;
}

by Arctic_1010 @ 2022-10-08 16:22:07

@Gril

m.insert({make_pair(i,j),k});

改为

m[{i,j}]=k;

或者您的写法

m[make_pair(i,j)]=k;

原因未知。这场面我真没见过(


by Arctic_1010 @ 2022-10-08 16:36:17

@Gril

insert 如果已经有值就不会覆盖

直接等于则会


by Gril @ 2022-10-11 23:29:05

@Arctic_1010 非常感谢


|