北京金源-D02-汇总
2026-02-02 15:32:33
发布于:北京
使数组为空的最少操作次数
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[1000010];
signed main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
int m;
cin>>m;
a[m]++;
}
int sum=0;
for(int i=1;i<=1000000;i++){
if(a[i]==1){
cout<<-1;
return 0;
}else if(a[i]%3==0){
sum += a[i]/3;
}else if(a[i]%3==1){
sum += 2 + (a[i]-4)/3;
}else {
sum +=1 +a[i]/3;
}
}
cout<<sum;
return 0;
}
章鱼烧の最少花费
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
int n;
cin>>n;
int sum=0;
sum += n/10*100; //n里面10的倍数份章鱼烧
if(n%10<=6) sum += (n%10)*15 ;
else sum += 100;
cout<<sum;
return 0;
}
三个数的最大乘积
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[200010];
signed main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+n+1);
int maxn = a[n-2]*a[n-1]*a[n];
if(a[1]<0 && a[2]<0){//特殊情况
maxn=max(a[1]*a[2]*a[n],maxn);
}
cout<<maxn;
return 0;
}
重新分装苹果
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[100010];
int b[100010];
signed main(){
int n,m;
cin>>n>>m;
int sum=0;//求和
for(int i=1; i<=n; i++){
cin>>a[i];
sum += a[i];
}
for(int i=1; i<=m; i++){
cin>>b[i];
}
sort(b+1, b+m+1, greater<int>());
for(int i=1 ;i<=m; i++){
if(b[i] < sum){
sum -= b[i];
}
else {
cout << i;
return 0;
}
}
return 0;
}
吃最少的食物
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[200010],b[200010];
signed main(){
int n,x,y;
cin>>n>>x>>y;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
cin>>b[i];
}
sort(a+1, a+n+1, greater<int>());
sort(b+1, b+n+1, greater<int>());
int sum1=0, sum2=0;
//int t = 0;
for(int i=1;i<=n;i++){
sum1 += a[i];//甜度总和
sum2 += b[i]; //咸度总和
if(sum1 > x || sum2 > y) {
cout << i;
//t = 1;
//break;
return 0;//直接结束
}
}
//if(!t)cout<<n;
cout<<n;
return 0;
}
重排字符串
#include<bits/stdc++.h>
using namespace std;
int main(){
int T;
cin>>T;
while(T--){
string s,t;
cin>>s>>t;
sort(s.begin(),s.end());//对s从小到大
sort(t.begin(),t.end(),greater<char>());//对t从大到小
if(s<t){
cout<<"YES"<<endl;
} else {
cout<<"NO"<<endl;
}
}
return 0;
}
全部评论 2


搞个D03以后昨天 来自 北京
0太有格调了
昨天 来自 北京
0























有帮助,赞一个