【Day4】C++竞赛每日练习

P1046 NOIP 2005 普及组 陶陶摘苹果https://www.luogu.com.cn/problem/P1046#ide

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

int a[11];
int n,ret;

int main() {
	for(int i = 1;i<=10;i++)
	{
		cin>>a[i];
	}
	cin>>n;
	for(int i = 1;i<=10;i++)
	{
		if(a[i]>(n+30))continue;
		else
		ret++;
	}
	cout<<ret;
	return 0;
}

P1478 陶陶摘苹果(升级版)https://www.luogu.com.cn/problem/P1478#ide

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
const int N = 5010;
int s,n,ret,a,b;

struct node
{
	int x,y;
}h[N];

bool cmp(node a,node b)
{
	return a.y<b.y;
}

int main() {
	cin>>n>>s>>a>>b;
	//苹果数a,力气s,椅子高度a,手长b
	for(int i = 1;i<=n;i++)
	{
		cin>>h[i].x>>h[i].y;
	} 
	sort(h+1,h+1+n,cmp);
	for(int i = 1;i<=n;i++)
	{
		if(h[i].x <=a+b && s >= h[i].y )
		{
			ret++;
			s -= h[i].y;
		}
		else continue;
	}
	cout<<ret;
	return 0;
}

P2969 USACO09DEC Music Notes Shttps://www.luogu.com.cn/problem/P2969#ide

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const  ll N = 50008;
int n,q,b[N],t[N],f[N];


int main()
{
	cin>>n>>q;
	for(int i = 1;i<=n;i++)
	{
		int x;cin>>x;
		b[i] = b[i-1]+x;//输入音符一次持续几个节拍
		
	}
	while(q--)
	{
		int t;cin>>t;
		int l = 1,r = n;
		while(l<r)
		{
			int mid = (l+r)/2;
			if(b[mid]>t)r = mid;
			else
			l = mid+1;
		}
		cout<<l<<endl;
	}
	return 0 ;
}
相关推荐
fpcc7 小时前
c++编程实践—堆和栈越界调试
c++
yi0117 小时前
LeetCode 219:存在重复元素 II——哈希表记录“最近一次出现的位置”
数据结构·人工智能·笔记·python·算法·leetcode·哈希表
weiabc9 小时前
MSYS2 UCRT64 + g++ C++ 中文输出乱码 完整全过程
c++
灯澜忆梦10 小时前
【面向对象编程C++】| 基础语法
java·c++·算法
禾小西10 小时前
Redis 数据结构:快速的 Redis 有哪些慢操作?
数据结构·数据库·redis
小蒋观天下10 小时前
专项方案:大场景港口AI安防、多干扰环境下的算法调优与落地实操
人工智能·深度学习·算法·安全·机器学习·计算机视觉·ai大模型
Evand J10 小时前
【电机滤波例程5】渐消因子自适应扩展卡尔曼滤波(EKF),MATLAB。PMSM负载突变下的状态估计。附下载链接
算法·matlab
H.莓飛10 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
好想像大佬一样能够ak所有11 小时前
Leetcode35.搜索插入位置
数据结构·算法·leetcode
aqiu11111111 小时前
【C++算法打怪专栏】LeetCode 165. 比较版本号(双指针与字符串流法)
c++·算法·leetcode