第19次csp认证 202006-2 稀疏向量(C++)
题目
分析
本题需要计算的是两个n维向量的内积,只需计算两者对应的稀疏向量index相同的分量乘积,然后累加就可以了。
- 向量的一个分量包含index和value,使用struct来存储比较方便。
- n<=109,a,b<=5 * 105,|ui| * |vi|<=1012 * 5 * 105=5 * 1017。所以,n,a,b均选择int类型存储,最后结果要用long long int存储。
- 判断index相等时使用两重for循环暴力求解会运行超时。应该先按维数对index排序,然后再交叉比较(详看代码)。
AC代码
#include<iostream>
#include<algorithm>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
struct vector
{int index;int value;};
bool comp(vector a,vector b)
{return a.index<b.index;
}
int main(int argc, char** argv)
{int i,j,n,a,b;cin>>n>>a>>b;vector u[a],v[b];long long int uv=0;int index,value;for(i=0;i<a;i++){cin>>u[i].index>>u[i].value; }for(i=0;i<b;i++){cin>>v[i].index>>v[i].value;}sort(u,u+a,comp);sort(v,v+b,comp);for(i=0,j=0;i<a&&j<b;){if(u[i].index==v[j].index){uv=uv+u[i].value*v[j].value;i++;j++;} else if(u[i].index<v[j].index)i++;elsej++;} cout<<uv;return 0;
}
如果文章有错误,或者您有更好的方法,欢迎在评论区留言。
Reference
csp第19次认证第2题
C/C++中sort函数用法
第19次csp认证 202006-2 稀疏向量(C++)相关推荐
- 2023年3月19日的csp认证考场经历
第29次csp认证算是告一段落了.笔者第一次参加,能够拿到这个分数,也算是非常幸运了,先晒一下自己的分数(doge): 编辑切换为居中 添加图片注释,不超过 140 字(可选) 然后再简要谈谈自己 ...
- 北航ccf计算机软件能证排名前18%,CCF成功举办第十一次CCF CSP认证
第十一次CCF CSP计算机软件能力认证(CSP)于2017年9月17日在全国66所院校举办,这是2017年度CCF举办的第二次认证,来自全国200多个单位的6591人参加了本次认证.通过对本次CSP ...
- python认证考试_Python入门习题(39)——CCF CSP认证考试真题:公共钥匙盒
CCF CSP认证考试真题:共钥匙盒 问题描述 试题编号:201709-2 试题名称:公共钥匙盒 时间限制:1.0s 内存限制:256.0MB 问题描述 有一个学校的老师共用N个教室,按照规定,所有的 ...
- csp认证之旅--------【python】持续更新
小白csp认证之旅 2021.12-2 第24次CCF计算机软件能力认证 2021.12-3 第24次CCF计算机软件能力认证 2021.9-2 第23次CCF计算机软件能力认证 2021.9-3 第 ...
- CSP:CSP认证考试:202012-1(期末预测之安全指数)满分答案,Java版
CSP:CSP认证考试:202012-1(期末预测之安全指数)满分答案,Java版 一.题目: 二.Java满分答案 import java.util.Scanner;public class Mai ...
- CSP:CSP认证考试:202104-1(灰度直方图)满分答案,Java版
CSP:CSP认证考试:202104-1(灰度直方图)满分答案,Java版 一.题目: 二.Java满分答案 import java.util.ArrayList; import java.util. ...
- CSP:CSP认证考试:202109-2(非零段划分)70分答案,Java版
CSP:CSP认证考试:202109-2(非零段划分)70分答案,Java版 一.题目: 二.Java70分答案 import java.util.ArrayList; import java.uti ...
- CSP:CSP认证考试:202109-1(数组推导)满分答案,Java版
CSP:CSP认证考试:202109-1(数组推导)满分答案,Java版 一.题目: 二.Java满分答案 import java.util.ArrayList; import java.util.S ...
- CSP认证201509-2 日期计算[C++题解]:枚举、模拟
题目分析 来源:acwing 分析: 主要是判断2月多少天.然后就是遍历每个月,依次减去当前月的天数,发现days还剩多少天就是当月几号. 其实这里是背的模板,日期题模板更难一点的题目是 CSP认证 ...
最新文章
- usb过滤驱动inf_N卡驱动全家桶专治工具升级:专为玩家打造
- golang var 初始化时机_你应该知道的 Go 调度器知识:Go 核心原理 — 协程调度时机...
- 该工程中的宏被禁止_建筑工程的发包与承包中有哪些行为是禁止的?
- boost::math模块演示负二项分布使用的简单示例的测试程序
- 【MATLAB统计分析与应用100】案例001:matlab使用Importdata函数导入文本txt数据
- JavaFX游戏(四连环)
- C++笔记-基于邻接表的BFS(宽度优先遍历)
- python problem
- java url压缩_URL压缩算法的短地址
- 《深度学习》李宏毅 -- task7总结
- Codeforces Round # 555 (Div. 3) C2. Increasing subsequence (complicated version) (贪心)
- android 背景逐渐变暗,UI:使View背景逐渐变暗的方法
- 百度之星程序设计大赛输出格式的注意
- 电子书城系统设计与实现
- Mac键盘突然失灵怎么办?别急,教你打开辅助键盘
- 语料库mysql_基于PHP+MySQL的小型语料库程序设计解决方案
- 党² - 李超线段树
- 思维导图使用技巧:手把手教你怎么画思维导图 #CSDN博文精选# #系统化学习# #IT技术# #知识图谱#
- 测试IP和端口是否通
- 数学推导+纯Python实现机器学习算法22:EM算法
热门文章
- Java 8:对速度3.0.1“森林”流ORM的更深入了解
- 使用Spring boot,Thymeleaf,AngularJS从零开始构建新的Web应用程序-第2部分
- 如何在Hibernate Search 5.5.2 / Apache Lucene 5.4.x中处理停用词?
- javafx 表单_JavaFX 2:创建登录表单
- 如何在JUnit 5中替换规则
- SpringBoot:SpringBoot简介
- 装饰器设计模式的应用
- 使用自定义日志记录处理程序在JBoss AS 7中跟踪SQL语句
- JSF Tomcat配置示例
- Linux命令终端如何查询本机的内外网IP地址