社区讨论
万能的谷民们啊
CF1003DCoins and Queries参与者 3已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @lo8hwbu1
- 此快照首次捕获于
- 2023/10/27 18:53 2 年前
- 此快照最后确认于
- 2023/10/27 18:53 2 年前
求助,请问为什么wa在了第4个点啊?
CPP#include <bits/stdc++.h>
using namespace std;
int n,q,y,u,sum,a[200005],ls[101];
inline int read(){
register int s=0,w=1;
register char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-'){w=-1,ch=getchar();}}
while(ch>='0'&&ch<='9'){s=s*10+ch-'0';ch=getchar();}
return s*w;
}
int main()
{
n=read(),q=read();
for(int i=1;i<=n;i++){
a[i]=read();
sum=0;
while(1){
if((a[i]>>1)>0){
sum+=1;
a[i]=a[i]>>1;
}else{
break;
}
}
ls[sum]=1;
}
for(int i=1;i<=q;i++){
u=read();
sum=0;
for(int j=30;j>=0;j--){
if(ls[j]==1){
if(u>=(1<<j)){
sum+=u/(1<<j);
u=u%(1<<j);
}
}
}
// while(1){
// if(y==0){
// break;
// }
//// if(u-a[y]<0){
//// y--;
//// }else{
//// u-=a[y];
//// sum+=1;
//// }
// sum+=u/a[y];
// u=u%a[y];
// y--;
// }
if(u!=0){
cout<<-1<<endl;
}else{
cout<<sum<<endl;
}
}
return 0;
}
/*
4 3
1 200 400 800
199
198
200
*/
都快调炸了
回复
共 7 条回复,欢迎继续交流。
正在加载回复...