【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 ;
}
相关推荐
AIpanda88810 分钟前
当数字员工与熊猫智汇协作,如何实现销售潜力的全面提升?
算法
无限进步_11 分钟前
【C++】AVL树完全解析:从平衡因子到四种旋转
c语言·开发语言·数据结构·c++·后端·算法·github
zubylon18 分钟前
前端 RAG:把文档检索接到聊天页
前端·人工智能·算法
H Journey30 分钟前
C++ 多线程安全的单例模式
c++·单例模式
Dfreedom.35 分钟前
【实战篇】分类任务全流程演示——决策树
人工智能·算法·决策树·机器学习·分类
阿梦Anmory36 分钟前
【RAG相关】深入理解混合检索:BM25关键词检索与RRF融合算法详解
算法
草莓熊Lotso39 分钟前
Linux Socket 编程筑基:从底层本质到核心 API,一文吃透 Socket 预备知识
linux·运维·服务器·数据库·c++
浅念-42 分钟前
LeetCode最短路必看:BFS算法原理+经典题解
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先
aqiu11111143 分钟前
ACM校赛
算法
say_fall1 小时前
装软件慢到崩溃?用户创建总出错?Linux 工具避坑指南
linux·运维·服务器·c++·学习