試題編號: 202006-2
試題名稱: 稀疏向量
時間限制: 2.0s
記憶體限制: 512.0MB


問題鏈接:CSP202006-2 稀疏向量
問題簡述:(略)
問題分析:map用于存盤稀疏資料是最有效的,也可以用來存盤稀疏向量,2個向量不必都存盤,能夠邊讀入資料邊計算可以節省存盤,也有助于提高計算速度,
先讀入資料存盤在資料結構中,再進行處理是倒騰,既浪費存盤又浪費時間,完全沒有必要,
程式說明:(略)
參考鏈接:(略)
題記:時間與空間是程式的永恒主題,
AC的C++語言程式如下:
/* CSP202006-2 稀疏向量 */
#include <bits/stdc++.h>
using namespace std;
map<int, int> mp;
int main()
{
int n, a, b, ix, val;
scanf("%d%d%d", &n, &a, &b);
for(int i = 1; i <= a; i++) {
scanf("%d%d", &ix, &val);
mp[ix] = val;
}
long long sum = 0;
for(int i = 1; i <= b; i++) {
scanf("%d%d", &ix, &val);
sum += val * mp[ix];
}
printf("%lld\n", sum);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/50754.html
標籤:其他
