欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

CCF稀疏向量&报数

时间:2023-06-05
稀疏向量

C++解答

由于数值量很大,使用数组的话会爆掉,可以使用map进行存储,同时将result设置成long long类型

#include#include using namespace std;int main(){ int n,a,b; long long result=0; cin>>n>>a>>b; //int x[n+1]={0},y[n+1]={0}; mapx; mapy; for(int i=1;i<=a;i++){ int k,m; cin>>k>>m; x[k]=m; } for(int i=1;i<=b;i++){ int k,m; cin>>k>>m; y[k]=m; if(x[k]!=0){ result+=y[k]*x[k]; } } cout<

报数

C++解答
注意含7的求法,while一下

#includeusing namespace std;int main(){ int n; cin>>n; int cnt=1;//计数 int num=1;//报数 int result[4]={0};//甲乙丙丁的数目 while(cnt<=n){ if(num%7==0){//是否是7的倍数 result[(num-1)%4]+=1; }else{ int temp=num; while(temp){ if(temp%10==7){ result[(num-1)%4]+=1; break; } temp/=10; } if(temp==0){ cnt++; } } num++; } for(int i=0;i<4;i++){ cout<

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。