2024 暑假友谊赛 1 (7.13)zhaosang
A-A
https://vjudge.net/contest/638765#problem/A
一开始贪心做不出来,后面发现是dp找到转移方程即可,01dp问题
代码如下
#include <bits/stdc++.h>
using namespace std;
using ll =long long;
ll v[10000010];
ll n;
ll ans;
ll prefix[10000010];
int main() {
int N;
cin >> N;
vector<int> T(N);
for (int i = 0; i < N; ++i) {
cin >> T[i];
}
int all = accumulate(T.begin(), T.end(), 0);
vector<bool> dp(all / 2 + 1, false);
dp[0] = true;
for (int i = 0; i < N; ++i) {
for (int j = all / 2; j >= T[i]; --j) {
if (dp[j - T[i]]) {
dp[j] = true;
}
}
}
int result = all;
for (int i = all / 2; i >= 0; --i) {
if (dp[i]) {
result = all - i;
break;
}
}
cout << result << endl;
return 0;
}
B-B
板子题,
代码如下
#include <bits/stdc++.h>
using namespace std;
using ll =long long;
ll n;
ll ans;
ll prefix[10000010];
set<ll>st;
struct Point {
ll x, y;
};
bool dfs(ll u, vector<vector<ll>> &adj, vector<bool> &visited, vector<ll> &match) {
for (int v : adj[u]) {
if (!visited[v]) {
visited[v] = true;
if (match[v] == -1 || dfs(match[v], adj, visited, match)) {
match[v] = u;
return true;
}
}
}
return false;
}
int maxMatching(vector<vector<ll>> &adj, int n) {
vector<ll> match(n, -1);
ll count = 0;
for (int u = 0; u < n; ++u) {
vector<bool> visited(n, false);
if (dfs(u, adj, visited, match)) {
count++;
}
}
return count;
}
int main() {
int N;
cin >> N;
vector<Point> red(N);
vector<Point> blue(N);
vector<vector<ll>> adj(N);
for (int i = 0; i < N; ++i) {
cin >> red[i].x >> red[i].y;
}
for (int i = 0; i < N; ++i) {
cin >> blue[i].x >> blue[i].y;
}
for (int i = 0; i < N; ++i) {
for (int j = 0; j < N; ++j) {
if (red[i].x < blue[j].x && red[i].y < blue[j].y) {
adj[i].push_back(j);
}
}
}
ll result = maxMatching(adj, N);
cout << result << endl;
return 0;
}
H-H
https://vjudge.net/contest/638765#problem/H
签到题,不多说
#include <bits/stdc++.h>
using namespace std;
using ll =long long;
ll v[10000010];
ll n;
ll ans;
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
ll x,y,n;
cin>>x>>y>>n;
if(3*x<=y){
cout<<n*x;
}else {
if(n>=3){
cout<<(n/3)*y+(n%3)*x;
}else
cout<<n*x;
}
}
其他题正在补。。。。。。
D-D
https://vjudge.net/contest/638765#problem/D
F-F
https://vjudge.net/contest/638765#problem/F
2024 暑假友谊赛 1 (7.13)zhaosang的更多相关文章
- 合肥学院ACM集训队第一届暑假友谊赛 B FYZ的求婚之旅 D 计算机科学家 F 智慧码 题解
比赛网址:https://ac.nowcoder.com/acm/contest/994#question B FYZ的求婚之旅 思路: 然后用快速幂即可. 细节见代码: #include <i ...
- 我和nupt集训队的故事
纯水文,如有不适请ctrl+w撤离 亚洲赛刚结束.看了不少巨巨的退役贴以及岛娘在知乎上的那篇感天动地的人生经历.多少有点夜深忽梦少年事的错觉.作为一个两年前就打出gg的高龄选手,之后又强行以1次队员和 ...
- [JS]笔记13之Date对象
-->获取与设置时间的方法-->使用Date对象制作相应的效果 1.设置时间创建一个时间对象 new Date(time); 设置时间 time 从1970年1月1日至几种格式:new D ...
- 20172305 暑假作业 之 TimeCalculate & Save Iron Man
20172305 暑假作业 之 TimeCalculate & Save Iron Man TimeCalculate 项目介绍 项目名称: TimeCalculate 项目简介: 本项目基于 ...
- hdu2037今年暑假不AC(贪心,活动安排问题)
今年暑假不AC Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submi ...
- STL 入门 (17 暑假集训第一周)
快速全排列的函数 头文件<algorithm> next_permutation(a,a+n) ---------------------------------------------- ...
- 杭电OJ(HDU)-ACMSteps-Chapter Three-《FatMouse' Trade》《今年暑假不AC》《排名》《开门人和关门人》
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fpc2luaV92Yw==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- 2014暑假ACM13级一批集训内容
2014 这个暑假,我大一的暑假来吧!!! 2014暑假ACM13级一批集训内容 集训期间时间安排: 周一到周六 上午:8:00-11:30 下午:2:00-5:30 晚上7:00-9:30 周日自由 ...
- TechEmpower 13轮测试中的ASP.NET Core性能测试
应用性能直接影响到托管服务的成本,因此公司在开发应用时需要格外注意应用所使用的Web框架,初创公司尤其如此.此外,糟糕的应用性能也会影响到用户体验,甚至会因此受到相关搜索引擎的降级处罚.在选择框架时, ...
- .NET平台开源项目速览(13)机器学习组件Accord.NET框架功能介绍
Accord.NET Framework是在AForge.NET项目的基础上封装和进一步开发而来.因为AForge.NET更注重与一些底层和广度,而Accord.NET Framework更注重与机器 ...
随机推荐
- Java21新特性-虚拟线程
虚拟线程是轻量级线程(类似于 Go 中的 "协程(Goroutine)"),可以减少编写.维护和调度高吞吐量并发应用程序的工作量. 线程是可供调度的最小处理单元,它与其他类似的处理 ...
- Android 11(R) MultiMedia(十五)MediaCodec同步模式实现一个简易播放器
这一节是实践,学习android原生SimplePlayer并自己码一遍,果然学到很多. MyPlayer.h #include <media/stagefright/foundation/AH ...
- ffmpeg之视频(avc+aac)无损转mp4(批处理,拖放)
很多能够无损转视频的工具都来自命令行的ffmpeg版本,本文将介绍如何简单的批处理方法(直接拖放到bat文件上)来实现无损转视频. 工具/原料 ffmpeg(默认的static版本) 方法/步骤 ...
- 微信小程序跳转重新加载目标页
可用于在首次进入到小程序后就执行性了首页的onLoad方法,等你再去点击其它页面再回来的时候就不会加载onLoad了,比如你跳到登录页后再返回到首页会发现首页啥数据都没加载,所以你在登录那边进行跳转的 ...
- 鸿蒙HarmonyOS实战-ArkTS语言基础类库(并发)
一.并发 并发是指在一个时间段内,多个事件.任务或操作同时进行或者交替进行的方式.在计算机科学中,特指多个任务或程序同时执行的能力.并发可以提升系统的吞吐量.响应速度和资源利用率,并能更好地处理多用户 ...
- (C#) IIS 响应标头过滤敏感信息(如:Server/X-Powered-By等) 运维知识
背景: 再一次净网行动中,客户要求安全改造发现了接口请求的header标头中出现如图中的敏感信息. 说明: 其意义在于告知浏网站是用什么语言或者框架编写的.解决办法就是修改该响应头为一个错误的值,将攻 ...
- minos 2.3 中断虚拟化——GICv2 管理
首发公号:Rand_cs 硬件肯定需要软件配合,这一节就来实战 GICv2 首先准备好 GICv2 手册:https://developer.arm.com/documentation/ihi0048 ...
- win10无线网卡不会自动连接
usb接口的网卡.win10无线网卡不会自动连接. 解决方法: 第一步:在控制面板\网络和 Internet\网络连接中,禁用再启用一次无线网络. 第二步:在 控制面板\硬件和声音\电源选项\选择电源 ...
- 项目管理--PMBOK 读书笔记(10)【项目沟通管理】
1.沟通技术 1)交互式沟通:双方多方之间的多项信息沟通,确保全体参与者对特定话题达成共识,回馈. 2)推式沟通:将信息发送给接收方,不确保受众理解. 3)拉式沟通:自主自行反问信息 2.沟通 ...
- 字符数组转换及数字求和 java8 lambda表达式 demo
public static void main(String[] args) throws IllegalAccessException { //字符串转换为数字且每个加上100,输出. String ...