(C++)CSP202006-2 稀疏向量 two pointers

news/2024/7/3 5:15:38
#include<cstdio>const int M = 500000;//a,b<=5*10^5
int u[M+1][2];//第一维是index,第二维是value 
int v[M+1][2];int main(){//1.读入n,a,b//2.对数组进行遍历,如果第一位相等,将第二维相乘 int n,a,b,i;long long ans=0;scanf("%d%d%d",&n,&a,&b); //读入向量ufor(i=0;i<a;i++){scanf("%d%d",&u[i][0],&u[i][1]);} //读入向量v for(i=0;i<b;i++){scanf("%d%d",&v[i][0],&v[i][1]);}int j=0,k=0;while(j<a&&k<b){if(u[j][0]==v[k][0]){ans+=u[j][1]*v[k][1];k++;j++;}else if(u[j][0]>v[k][0]){k++;}else{j++;}} printf("%lld",ans);return 0;
}

总结:
①这里的输出结果是long long,使用printf时要用格式%lld
②典型的双指针,利用两个序列都有有序的,变O(n^2)O(n)
③第二次写的时候,忘记在ans加完之后加上k++;j++;导致运行超时,还怀疑编译器出问题了,汗颜


http://lihuaxi.xjx100.cn/news/241713.html

相关文章

C# GUID的使用

GUID&#xff08;全局统一标识符&#xff09;是指在一台机器上生成的数字&#xff0c;它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成GUID的API。生成算法很有意思&#xff0c;用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。GUID的唯一缺陷在于生…

github上fork了别人的项目后,再同步更新别人的提交

我从github网站和用Git命令两种方式说一下。 github网站上操作 打开自己的仓库&#xff0c;进入code下面。点击new pull request创建。 选择base fork选择head fork点击Create pull request&#xff0c;并填写创建信息。6. 点击Merge pull request 合并从源fork来的代码。 7. 完…

UI培训教程分享:Ui设计的细节规范有哪些需要注意?

在职场中&#xff0c;有很多UI设计师是零经验的&#xff0c;都是刚学会技术就来入职的&#xff0c;与经验丰富的其他成员来说&#xff0c;新人一定要提高自己的工作能力&#xff0c;本篇UI培训教程为大家分享的是Ui设计的细节规范有哪些需要注意?希望能给大家在工作中带来帮助…

c语言实现线性结构(数组与链表)

由于这两天看了数据结构&#xff0c;所以又把大学所学的c语言和指针"挂"起来了。本人菜鸟一枚请多多指教。下面是我这两天学习的成果&#xff08;数组和链表的实现&#xff0c;用的是c语言哦&#xff01;哈哈&#xff09;。&#xff08;一&#xff09;数组的实现和操…

1544_AURIX_TC275_CPU子系统_存储寻址以及子系统寄存器

全部学习汇总&#xff1a; GreyZhang/g_TC275: happy hacking for TC275! (github.com) 继续TC275的CPU子系统的学习。 1. 从第一部分标注信息看&#xff0c;其实CPU的特殊功能寄存器是可以跨核去操作其他的CPU的。 2. 关于存储映射的部分&#xff0c;跟内核手册中的介绍是一样…

路演大师

为什么80%的码农都做不了架构师&#xff1f;>>> 影响企业生死存亡的五大问题之核心两个 问题一&#xff1a;不赚钱 ①产品一厢情愿&#xff0c;无用户需求。 ②试图将产品卖给所有人。可细分&#xff0c;如55度杯。 ③立场不坚定&#xff0c;走折中路线&#xff0c…

Python培训教程分享:有哪些值得使用的爬虫开源项目?

相信很多同学在学习Python技术的时候&#xff0c;都有学习到Python爬虫技术&#xff0c;爬虫技术在各大互联网公司都是非常常见的&#xff0c;可以帮助我们获取各种网站的信息&#xff0c;比如微博、B站、知乎等&#xff0c;本篇Python培训教程分享为大家整理了几个Python爬虫项…

Linux编程之自定义消息队列

我这里要讲的并不是IPC中的消息队列&#xff0c;我要讲的是在进程内部实现自定义的消息队列&#xff0c;让各个线程的消息来推动整个进程的运动。进程间的消息队列用于进程与进程之间的通信&#xff0c;而我将要实现的进程内的消息队列是用于有序妥当处理来自于各个线程请求&am…