emm《深入浅出》想通过这题让我们学会什么呢?

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

A_pier @ 2021-11-18 16:48:09

是学会使用map吗 还是学会用vector写出这题呢 map明明很简单就写出来,ac,如下:

#include<iostream>
#include<map>
using namespace std;
map<int, int>m[100001];

int main()
{
    int n, q;
    cin >> n >> q;
    int a, i, j, x;
    for (int k = 1; k <= q; k++) {
        cin >> a >> i >> j;
        if (a == 1) {
            cin >> x;
            m[i][j] = x;
        }
        else 
            cout << m[i][j] << endl;
    }

    return 0;
}

为什么题解第二要那样新手难懂的方式设置map变量,自写hash来写呢?有没有大佬告知


by A_pier @ 2021-11-18 16:53:06

说错了,不是第二个题解,第二个题解大佬想法很妙,自写hash用于map,这样的话速度和内存都远小于我上面那个写法 好吧我迷茫了,我也不知道自己想问什么,就问标题吧,这道题是想让我们学会vector+结构体的写法吗?


by qjxqjx @ 2021-12-19 17:36:58

@A_pier

无聊?


by quarmer @ 2022-01-13 17:30:46

emm……


by Hisaishi_Kanade @ 2022-02-10 14:47:33

@A_pier 亲测,不那样写map慢将近一倍


by YYHDoggy @ 2022-02-14 08:14:15

深基书上写的是vector扩容的解法,但是真的不会被卡吗(就算这道题不会)


|