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

谢谢大家!

相关推荐
丘山望岳2 分钟前
C++模板特化:类型与常量的灵活掌控
c语言·开发语言·c++
高级c4 分钟前
MindIE 推理引擎架构解析
深度学习·算法·架构·cann
奶人五毛拉人一块5 分钟前
滑动窗口算法及习题讲解
数据结构·算法·滑动窗口·子数组
菜菜的顾清寒6 分钟前
力扣HOT100(28)两数相加
算法·leetcode·职场和发展
晚风叙码6 分钟前
从0吃透C++入门|第一个程序、命名空间与缺省函数基础
开发语言·c++
搬砖魁首8 分钟前
基础能力系列 - 多线程1 - 内存序
算法·内存序·memory order
j_xxx404_9 分钟前
Linux线程:核心机制与优雅的 C++ 封装实践|附源码
linux·运维·服务器·开发语言·c++·人工智能·ai
W230357657312 分钟前
手写 muduo 库:基于 Reactor 模型打造高性能网络通信框架
c++·reactor·tcp·muduo库
pursuit_csdn13 分钟前
力扣周赛 503
java·算法·leetcode
Zhang~Ling16 分钟前
C++ 模板进阶:非类型参数、特化与分离编译深度解析
开发语言·c++