首页 > 其他分享 >[2007年NOIP普及组] 纪念品分组

[2007年NOIP普及组] 纪念品分组

时间:2022-08-16 09:01:48浏览次数:60  
标签:纪念品 NOIP int cin bj break ++ 2007

分析:因为最多两个一组,所以可以按最大的和最小的一组,是否满足条件,如果满足,同时赋值0,.

#include<bits/stdc++.h>
using namespace std;
int n,m,i,a[300000],s=0,j;
int main(){
cin>>m>>n;
for(i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+n+1,greater<int>());
int bj=n;
for(i=1;i<=n;i++){
if(a[i]==0){
break;
}
if(i==bj){
s++;
break;
}
if(a[i]+a[bj]<=m){
a[i]=0;
a[bj]=0;
s++;
bj--;
}
else{
a[i]=0;
s++;
}
}
cout<<s;
}

标签:纪念品,NOIP,int,cin,bj,break,++,2007
From: https://www.cnblogs.com/wangjunlong9948/p/16590359.html

相关文章

  • [NOIP2002 提高组] 均分纸牌
    题目链接:https://www.luogu.com.cn/problem/P1031试题分析:首先分析样例:输入样例后,我们要先求出平均值,进而求出与平均值的差值: 我们能够得到三次移动:1.  7向右-4变......
  • [2002年NOIP提高组] 均分纸牌
    分析:每次移动都需要将其补全或删掉,如果这个正好是平均数,则步骤次数不增加98176-1-27-40-34-4004-40000#include<bits/stdc++.h>usingnamespacestd;......
  • [2013年NOIP提高组] 积木大赛
    [2013年NOIP提高组]积木大赛思路:只需要进行n次循环,(两个数之间,如果后面的数大于前面的)用后面的数-前面的差值累加,就能得出操作次数啦~代码如下:#include<iostream>#incl......
  • [2004年NOIP普及组] FBI树
    [2004年NOIP普及组]FBI树思路:运用递归。已知“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。写一个后序遍历的函......
  • [2001年NOIP普及组] 数的计算
    我们要求找出具有下列性质数的个数(包含输入的自然数n):先输入一个自然数n(n<=1000),然后对此自然数按照如下方法进行处理:1.不作任何处理;2.在它的左边加上一个自然数,但......
  • NC16681 [NOIP2003]加分二叉树
    题目链接题目题目描述​设一个n个节点的二叉树tree的中序遍历为(l,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第j个节点的分数为di,t......
  • [2007年NOIP普及组] 奖学金
    某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分......
  • [2009年NOIP普及组] 分数线划定
    世博会志愿者的选拔工作正在A市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取......
  • [2007年NOIP普及组] 奖学金
    某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分......
  • [2007年NOIP普及组] Hanoi双塔问题
    分析:根据样例可得x(n)=2+2*2……运用高精乘进行乘#include<bits/stdc++.h>usingnamespacestd;intc[600000],jw[600000];inti,n,a[600000],j,b[600000]={0,2},bj;intma......