【游记】CSP J/S 2019 游记
J 组
\(2:30\)开始, \(2:13\)还在酒店的我看了看手表。。。飞奔考场。
T1 数字游戏
秒切。
下午某中学某大佬说可用线性基(%)
T2 公交换乘
用单调队列思想,秒切。
T3 纪念品
刚看题,wow这不水题吗,铁定\(DP\),再看,嗯?啥时候买?啥时候卖?。。。后来发现可用背包,感觉正解,样例2没过。。。
考场代码:
#include <cmath>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define ll long long
using namespace std;
const int N = 110;
int t, n;
ll m, ans;
ll a[N][N];
bool f[200010];
ll b[200010][N];
int main()
{
freopen("souvenir.in", "r", stdin);
freopen("souvenir.out", "w", stdout);
scanf("%d%d%lld", &t, &n, &m);
for (int i = 1; i <= t; i++)
for (int j = 1; j <= n; j++)
scanf("%lld", &a[i][j]);
for (int i = 1; i < t; i++)
{
memset(f, 0, sizeof(f));
memset(b, 0, sizeof(b));
f[0] = 1;
for (int j = 1; j <= n; j++)
{
if(a[i][j] < a[i + 1][j])
{
for (int k = a[i][j]; k <= m; k++)
{
f[k] = f[k] || f[k - a[i][j]];
if(f[k - a[i][j]])
b[k][j] += b[k - a[i][j]][j] + 1;
}
}
}
ll plu = -22222;
for (int j = m; j > 0; j--)
{
if(f[j])
{
plu = m - j;
for (int k = 1; k <= n; k++)
if(b[j][k])
plu += m / (b[j][k] * a[i][k]) * (b[j][k] * a[i + 1][k]);
break;
}
}
if(plu != -22222)m = plu;
}
printf("%lld", m);
return 0;
}
正解:
#include <cmath>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define ll long long
using namespace std;
const int N = 110;
int t, n;
ll m, ans;
ll a[N][N];
ll f[200010];
int main()
{
freopen("souvenir.in", "r", stdin);
freopen("souvenir.out", "w", stdout);
scanf("%d%d%lld", &t, &n, &m);
for (int i = 1; i <= t; i++)
for (int j = 1; j <= n; j++)
scanf("%lld", &a[i][j]);
for (int i = 1; i < t; i++)
{
memset(f, 0, sizeof(f));
for (int j = 1; j <= n; j++)
{
for (int k = a[i][j]; k <= m; k++)
{
f[k] = max(f[k], f[k - a[i][j]] + a[i + 1][j] - a[i][j]);
}
}
m = max(m, f[m] + m);
}
printf("%lld", m);
return 0;
}
。。。
我枯了
T4 加工零件
考场想到了最短路,但发现不对劲,打了个\(\texttt{BFS}\)暴力。
正解:最短路
。。。
S组
Day0
\(\text{上午:}\)学校运动会,偷溜至机房。
\(\text{下午:}\)去广州
Day1
T1
\]
【游记】CSP J/S 2019 游记的更多相关文章
- CSP J/S 2019受虐记
一枚蒟蒻的游记~ 提高组DAY1 不是说每场考试都有一道签到题吗 那我tm读了三遍题硬是没找到一道水题是怎么回事(是我太弱了吗) 没办法,硬着头皮做T1 暴力写法...期望得分30pts 于是...在 ...
- Codechef April Challenge 2019 游记
Codechef April Challenge 2019 游记 Subtree Removal 题目大意: 一棵\(n(n\le10^5)\)个结点的有根树,每个结点有一个权值\(w_i(|w_i\ ...
- WC 2019 游记 - 败者之低语
败者之低语 WC 2019 游记 Day -1 看了一圈PKU和THU的题,感觉图像识别真有意思... 感觉非常讲道理,pku还是比thu简单一点的... 听说高二414在thu没有进面试? 震惊!( ...
- FJWC 2019 游记
FJWC 2019 游记 Day 0 春节旅游, 刚从杭州绍兴一带赶回来, 然而并没有直接飞去福州, 去了厦门再去福州, 浪费了好多时间. Day 1 酒店到学校有 \(20\) 分钟的步行路程, 感 ...
- CSP-S 2019 游记
目录 CSP-S 2019 游记 DAY -1 Day 0 Day 1 Day 2 后记 CSP-S 2019 游记 机房段子: zr(老师):yyx我看你最近不错哦(此人外号拳皇 yyx:运气好运气 ...
- thupc & cts & apio & thusc 游记 (北京17日游记)
thupc & cts & apio & thusc 游记 (北京17日游记) Day 0 和隔壁校两人py了一下,六个人组了两队,(左哼哼)与(右哼哼),我和Camoufla ...
- CSP J/S 初赛总结
CSP J/S 初赛总结 2021/9/19 19:29 用官方答案估计 J 涂卡的时候唯一的一支 2B 铅笔坏了,只能用笔芯一个个涂 选择 \(-6\ pts\) 判断 \(-3\ pts\) 回答 ...
- Diary -「CSP 2019 J/S」 游记
\(\text{Day 0}\) 试机, 总体感觉不错, 至少不像初一时候的紧张, 毕竟是中青年选手了 ( ? ) 当晚睡得挺好, 虽然是冲着一等奖去的, 但还是没有给自己过多的思想包 ...
- CSP 2019游记 & 退役记
扶苏让我记录他AK CSP 的事实 ZAY NB!!! "你不配" 两年半的旅行结束了,我背着满满的行囊下了车,望着毫不犹豫远去的列车,我笑着哭了,笑着翻着我的行囊-- 游记 Da ...
随机推荐
- C++:类中创建线程
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <iostream&g ...
- Vue+element UI实现分页组件
介绍 这是一个是基于element-UI的分页组件基础上,进行了二次封装的分页组件,在展示数据时,该分页组件采用了每显示一页数据,只请求当前页面的数据的请求策略,从而避免了一次性将数据全部请求所造成的 ...
- vscode react自动补全html标签
第一步:点击上图左下角设置,找到Settings,搜索includeLanguages 第二步:如上图点击图中红色区域,settings.json 第三部:把代码加入,如上图红色选择区域. " ...
- python——int()、hex()、oct()、bin()、float()数值类型转换函数
摘要:在python中,数值类型转换函数常用的有浮点型float().取整int().八进制oct().二进制bin().十六进制hex()这五个函数. 单词float的意思就是浮动的意思: int是 ...
- Mybatis自定义TypeHandler解决特殊类型转换问题
我们知道,Java和MySQL中的数据类型是不同的,Java中除了基本数据类型,还有对象. 有时候使用MySQL存储数据,或者从MySQL中读取数据时,会有一些特殊需求
- [Office] 显示Office 2013中的Developer Tab和启用Macro
显示Developer Tab是对Office 2013进行开发的前提条件. 在Excel 2013中,打开Excel Option: 只要勾选对应的Developer选项即可显示该tab. 随着Of ...
- 为什么Python类语法应该不同?
做过python的人你会发现想要的东西跟它原有的是不同的.Python对我来说是真的是这样.如果可以的话,对于Python中很多的我想要改的东西,我有很多的想法.现在我向您讲述其中一个:类定义的语法. ...
- 1005 Spell It Right(20 分)
1005 Spell It Right(20 分) Given a non-negative integer N, your task is to compute the sum of all the ...
- nyoj 68-三点顺序(叉积)
68-三点顺序 内存限制:64MB 时间限制:1000ms 特判: No 通过数:3 提交数:5 难度:3 题目描述: 现在给你不共线的三个点A,B,C的坐标,它们一定能组成一个三角形,现在让你判断A ...
- 【并发编程】synchronized的使用场景和原理简介
1. synchronized使用 1.1 synchronized介绍 在多线程并发编程中synchronized一直是元老级角色,很多人都会称呼它为重量级锁.但是,随着Java SE 1.6对sy ...