【洛谷】CYJian的水题大赛【第二弹】解题报告
T1: JerryC Loves Driving
第一题应该就是一道水分题(然而我只水了130分),我的主要做法就是暴力模拟,再做一些小小的优化(蠢得我自己都不想说了)。
My Code:
#include<bits/stdc++.h>
using namespace std;
int a,b,ans;
void read(int &x){
char ch; bool ok;
for(ok=0,ch=getchar(); !isdigit(ch); ch=getchar()) if(ch=='-') ok=1;
for(x=0; isdigit(ch); x=x*10+ch-'0',ch=getchar()); if(ok) x=-x;
}
void work(){
ans=0;
read(a),read(b);
for(int i=0;i<=b-a;i++){
int re=0;
for(int j=1;j<=(a+i)/2;j++){
int k=(a+i)/j;
if(j%2==0)re+=k;
else re-=k;
}
if((a+i-(a+i)/2)%2!=0){
if(((a+i)/2)%2==0)re--;
else re++;
}
ans+=re;
}
printf("%d\n",ans);
}
int main(){
work();
return 0;
}
T2: Jerry Loves Lines
看了一眼后就开始暴力了,懒得去写更优的办法(其实就是我弱而已),结果悲剧的拿了64分。
My Code:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m,k,val[2001];
struct f{
ll k,b;
}fct[2001];
void read(ll &x){
char ch; bool ok;
for(ok=0,ch=getchar(); !isdigit(ch); ch=getchar()) if(ch=='-') ok=1;
for(x=0; isdigit(ch); x=x*10+ch-'0',ch=getchar()); if(ok) x=-x;
}
void work(ll x){
for(int i=1;i<=n;i++)val[i]=fct[i].k*x+fct[i].b;
sort(val+1,val+n+1);
printf("%lld\n",val[k]);
}
int main(){
read(n),read(m),read(k);
for(int i=1;i<=n;i++)read(fct[i].k),read(fct[i].b);
for(int i=1;i<=m;i++){
ll x;read(x);
work(x);
}
return 0;
}
T3: Samcompu Loves Water
这道题一开始我用的就是简单的子父链建树,在搜索,然而只A了三个点,于是我就开始思考更优的解法。然后我就想到了用并查集做这道题,然后,多A了两个点。。。
My Code:
#include<bits/stdc++.h>
#define ll long long
#define N 1000001
using namespace std;
int n,m,fa[N],apr[N];
ll sz[N];
inline void read(int &x){
int f=1;x=0;char ch;
do{ch=getchar();if(ch=='-')f=-1;}while(ch<'0'||ch>'9');
do{x=x*10+ch-'0';ch=getchar();}while(ch>='0'&&ch<='9');
x*=f;
}
struct Line{
int from,to,val;
}tree[N];
int gf(int X){
if(fa[X]!=X)fa[X]=gf(fa[X]);
return fa[X];
}
void work(int tim,int x){
ll ans=0;
for(int i=1;i<=n;i++)apr[i]=0,sz[i]=1,fa[i]=i;
for(int i=1;i<n;i++){
if(tree[i].val>=tim||i==x)continue;
int f1=gf(tree[i].from),f2=gf(tree[i].to);
if(f1==f2)continue;
fa[f1]=f2;
sz[f2]+=sz[f1];
}
for(int i=1;i<=n;i++)
if(i!=x&&!apr[gf(i)]){apr[gf(i)]=1;ans+=sz[gf(i)]*(sz[gf(i)]-1);}
// for(int i=1;i<=n;i++)printf("Water: F: %d %d\n",gf(i),sz[gf(i)]);
printf("%lld\n",ans);
}
int main(){
read(m),read(n);
for(int i=1;i<n;i++){
int a,b,c;read(a),read(b),read(c);
tree[i].from=a,tree[i].to=b,tree[i].val=c;
}
// for(int i=1;i<n;i++)printf("Line: %d %d %d\n",tree[i].from,tree[i].to,tree[i].val);
for(int i=1;i<=m;i++){
int tim,id;read(tim),read(id);
work(tim,id);
}
return 0;
}
T4: Zrz_orz Loves Secondary Element
看到有人对我老婆存在念想,我就没有了写题的欲望!!!(不会写)
【洛谷】CYJian的水题大赛【第二弹】解题报告的更多相关文章
- CYJian的水题大赛
实在没忍住就去打比赛了然后一耗就是一天 最后Rank19还是挺好的(要不是乐多赛不然炸飞),这是唯一一套在Luogu上号称水题大赛的而实际上真的是水题大赛的比赛 好了我们开始看题 T1 八百标兵奔北坡 ...
- 【洛谷】CYJian的水题大赛 解题报告
点此进入比赛 \(T1\):八百标兵奔北坡 这应该是一道较水的送分题吧. 理论上来说,正解应该是DP.但是,.前缀和优化暴力就能过. 放上我比赛时打的暴力代码吧(\(hl666\)大佬说这种做法的均摊 ...
- CYJian的水题大赛2 解题报告
这场比赛是前几天洛谷上 暮雪﹃紛紛dalao的个人公开赛,当时基本上都在水暴力分......也没有好好写正解(可能除了T1) 过了几天颓废的日子之后,本蒟蒻觉得应该卓越一下了qwq,所以就打算写一个解 ...
- [洛谷U22157]刷水题(数位dp)(hash)
题目背景 做正经题是不可能做正经题的,这辈子都不可能做正经题的,毒瘤题又不会做毒瘤题,就是水题这种东西,才维持了蒟蒻的信心: 题目描述 这里有N+1 道水题,编号分别为0 ~N+1 ,每道水题都有它自 ...
- 洛谷 P1291 [SHOI2002]百事世界杯之旅 解题报告
P1291 [SHOI2002]百事世界杯之旅 题目描述 "--在2002年6月之前购买的百事任何饮料的瓶盖上都会有一个百事球星的名字.只要凑齐所有百事球星的名字,就可参加百事世界杯之旅的抽 ...
- Mychael原创题 洛谷T23923 Mychaelの水题 【题解】
原题链接 题目大意: 有来自三个地区的人各a,b,c位,他们排成了一排.请问有多少种不同类型的排法,使得相邻的人都来自不同的地区 \(a,b,c<=200\) 答案取模 题解 弱弱的标程解法 设 ...
- 洛谷 P2791 - 幼儿园篮球题(第二类斯特林数)
题面传送门 首先写出式子: \[ans=\sum\limits_{i=0}^m\dbinom{m}{i}\dbinom{n-m}{k-i}·i^L \] 看到后面有个幂,我们看它不爽,因此考虑将其拆开 ...
- [洛谷P4626]一道水题 II
题目大意:求$lcm(1,2,3,\cdots,n)\pmod{100000007}$,$n\leqslant10^8$ 题解:先线性筛出质数,然后求每个质数最多出现的次数,可以用$\log_in$来 ...
- 洛谷P1540 机器翻译 水题 模拟
注意一下细节,尤其是更新minv时不要更新错. Code: #include<vector> #include<iostream> #include<cstdio> ...
随机推荐
- bootstrap的Alerts中 可以放置p标签 设置 align="center" 用来设置文本居中
效果
- Python闭包相关问题
闭包的概念一直是似懂非懂,看过了原理,却不知道怎么实际应用. 刚好看到Python的late binding问题,记录如下,以备后续增补. >>> def create_multip ...
- bootstrap form样式及数据提交
1.基本form布局 想要把form表单弄成两列的表格样式,奈何前端不太懂,记录下样式便于下次使用. form-group :增加盒子的下边界 form-control: 充满整个父元素,并且有换行作 ...
- selenium webdriver API详解(三)
本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应) 一:获取页面元素的文本内容:text 例:获取我的博客名字文本内容 代码 ...
- 《图解 HTTP 》阅读 —— 第四章
第4章 返回结果的HTTP状态码 1XX 接收的请求正在处理 2XX 请求被处理 200 请求成功 204 请求成功,但是没有返回数据 206 客户端进行了范围请求 3XX 重定向 301 永久性重定 ...
- Python中元祖,列表,字典的区别
Python中有3种內建的数据结构:列表.元祖和字典: 1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目. 列表中的项目应该包括在方括号中,这样Python就知道 ...
- PostgreSQL9.6主从配置
参考文档: 备机日志传送:https://www.postgresql.org/docs/9.6/static/warm-standby.html 英文文档:https://www.postgresq ...
- 如何在Ubuntu 18.04上安装Go
如何在Ubuntu 18.04上安装Go 谢鸢发表于云计算教程系列订阅98 介绍 课程准备 第1步 - 安装Go 第2步 - 设置Go路径 第3步 - 测试您的安装 结论 介绍 Go是Google开发 ...
- [转]如何设计自适应屏幕大小的网页 Responsive Web Design
随着3G的普及,越来越多的人使用手机上网. 移动设备正超过桌面设备,成为访问互联网的最常见终端.于是,网页设计师不得不面对一个难题:如何才能在不同大小的设备上呈现同样的网页? 手机的屏幕比较小,宽度通 ...
- centos7.2 apache开启.htaccess
打开httpd.conf(在那里? APACHE目录的CONF目录里面),用文本编纂器打开后,查找 (1) AllowOverride None 改为 AllowOverride All (2)去掉下 ...