CCFCSP试题编号:202006-2试题名称:稀疏向量

不断匹配相乘累加就好了

cpp 复制代码
#include<iostream>
#include<vector>
#include <utility>
using namespace std;

int main() {
	int n;
	int a, b;
	long long result=0; // 使用 long long  
	cin >> n >> a >> b;

	vector<pair<int, int> > u, v;
	int index, value;

	for (int i = 0; i < a; i++) {
		cin >> index >> value;
		u.push_back({ index, value });
	}

	for (int i = 0; i < b; i++) {
		cin >> index >> value;
		v.push_back({ index, value });
	}

	int i = 0, j = 0;
	while (i < a && j < b) {
		if (u[i].first == v[j].first) {
			result += u[i].second * v[j].second;
			i++; j++;
		}
		else if (u[i].first > v[j].first) {
			j++;
		}
		else {
			i++;
		}
	}

	cout << result << endl;

	return 0;
}

这里面用了pair,如果不了解的,可以看一下妾身这一篇C++中的pair

谢谢大家!

相关推荐
此生只爱蛋20 分钟前
【手撕排序2】快速排序
c语言·c++·算法·排序算法
何曾参静谧40 分钟前
「C/C++」C/C++ 指针篇 之 指针运算
c语言·开发语言·c++
咕咕吖1 小时前
对称二叉树(力扣101)
算法·leetcode·职场和发展
九圣残炎1 小时前
【从零开始的LeetCode-算法】1456. 定长子串中元音的最大数目
java·算法·leetcode
lulu_gh_yu1 小时前
数据结构之排序补充
c语言·开发语言·数据结构·c++·学习·算法·排序算法
丫头,冲鸭!!!2 小时前
B树(B-Tree)和B+树(B+ Tree)
笔记·算法
Re.不晚2 小时前
Java入门15——抽象类
java·开发语言·学习·算法·intellij-idea
ULTRA??2 小时前
C加加中的结构化绑定(解包,折叠展开)
开发语言·c++
凌云行者3 小时前
OpenGL入门005——使用Shader类管理着色器
c++·cmake·opengl
凌云行者3 小时前
OpenGL入门006——着色器在纹理混合中的应用
c++·cmake·opengl