【LGR-062】洛谷10月月赛 III div.2 (A-C)
前言
100+100+46+0=246pts 300多名
以后每次比赛都要有进步哦!qwq
小D与笔试
水题
Code
#include<algorithm>
#include<iostream>
#include<cstdio>
#include<cmath>
#include<map>
using namespace std;
inline int read() {
int x=0,f=1; char ch=getchar();
while(ch<'0' || ch>'9') { if(ch=='-') f=-1; ch=getchar(); }
while(ch>='0'&&ch<='9') { x=(x<<3)+(x<<1)+(ch^48); ch=getchar(); }
return x * f;
}
int n,q;
map<string,string> s;
int main()
{
n = read(), q = read();
for(int i=1;i<=n;++i) {
string a,b;
cin>>a>>b; s[a] = b;
}
for(int i=1;i<=q;++i) {
string a,b,c,d,e;
cin>>e>>a>>b>>c>>d;
if(s[e] == a) cout<<"A"<<endl;
if(s[e] == b) cout<<"B"<<endl;
if(s[e] == c) cout<<"C"<<endl;
if(s[e] == d) cout<<"D"<<endl;
}
return 0;
}
/*
3 4
decoak yes
duliuchutiren nonono
csps noiptg
decoak yes no qwq qaq
csps noiptg noippj noi cspj
decoak qwq qaq yesyes yes
duliuchutiren yes no nono nonono
A
A
D
D
*/
小E与美食
水题。但是卡精度
Code
#include<algorithm>
#include<iostream>
#include<cstdio>
#include<cmath>
#include<queue>
#define int long long
using namespace std;
inline int read() {
int x=0,f=1; char ch=getchar();
while(ch<'0' || ch>'9') { if(ch=='-') f=-1; ch=getchar(); }
while(ch>='0'&&ch<='9') { x=(x<<3)+(x<<1)+(ch^48); ch=getchar(); }
return x * f;
}
const int N = 3e5+7;
int n;
int a[N];
bool cmp(int x,int y) {
return x > y;
}
signed main()
{
int n = read();
for(int i=1;i<=n;++i)
a[i] = read();
sort(a+1, a+1+n, cmp);
double maxx = 0.0; double sum = 0.0;
for(int i=1;i<=n;++i) {
sum += a[i];
double ss = sum*sum;
double tmp = (double)(ss*1.0/i*1.0);
maxx = max(maxx,tmp);
}
printf("%.8lf\n",maxx);
return 0;
}
/*
2
2 1
4.50
*/
小C与桌游
拓扑排序 + 贪心
但是贪心要考虑全面,在求ans2(就是第二问的时候),要将能去的点(now<last)全部走一遍,这样再找出来的最大值才是最优走法
实力不足,码力有限。冷静分析,考虑全面。
#include<algorithm>
#include<iostream>
#include<cstdio>
#include<cmath>
#include<queue>
using namespace std;
inline int read() {
int x=0,f=1; char ch=getchar();
while(ch<'0' || ch>'9') { if(ch=='-') f=-1; ch=getchar(); }
while(ch>='0'&&ch<='9') { x=(x<<3)+(x<<1)+(ch^48); ch=getchar(); }
return x * f;
}
const int N = 5e5+7;
int n,m,ans1,ans2;
int du1[N],du2[N];
bool vis[N];
vector<int> E[N];
struct Node {
int x,y; //×??o£??ù×ó
};
priority_queue<int,vector<int>,greater<int> > q1; //??¨¢? |ìY?? ?á???¨?
queue<int> q3;
priority_queue<int> A;
void topo() {
for(int i=1;i<=n;++i)
if(!du1[i]) q1.push(i), A.push(i);
int last = 0;
while(!q1.empty()) { //?¨°|ì??á??¨¤?á?
int u = q1.top(); q1.pop();
if(u > last) ans1++, last = u;
for(int i=0;i<E[u].size();++i) {
int v = E[u][i]; du1[v]--;
if(!du1[v]) q1.push(v);
}
}
last = 0;
while(!A.empty()) {
while(!A.empty()) {
int now = A.top(); A.pop();
if(now > last) {
last = now; ++ans2;
}
q3.push(now);
}
while(!q3.empty()) {
int now = q3.front(); q3.pop();
// printf("now = %d\n",now);
for(int i=0;i<E[now].size();++i) {
int to = E[now][i]; --du2[to];
if(!du2[to]) {
if(to < last) q3.push(to);
else A.push(to);
}
}
}
// printf("Atop = %d\n",A.top());
}
}
int main()
{
n = read(), m = read();
for(int i=1,u,v;i<=m;++i) {
u = read(), v = read();
E[u].push_back(v); du1[v]++; du2[v]++;
}
topo();
ans1 = min(ans1,1919810);
ans2 = min(ans2,1919810);
printf("%d\n%d\n",ans1,ans2);
return 0;
}
/*
3 2
1 2
1 3
3
2
*/
【LGR-062】洛谷10月月赛 III div.2 (A-C)的更多相关文章
- 【LGR-060】洛谷10月月赛 I div.1&div.2
Preface 一边打一边写作文打的像shit,T2失智严重特判错了233 Orz Div1 Rank2的foreverlastnig聚聚,顺便说一句显然Luogu的比赛质量比以往显著提高了啊 以下题 ...
- 【LGR-065】洛谷11月月赛 III Div.2
临近$CSP$...... 下午打了一发月赛,感觉很爽. 非常菜的我只做了前两题......然而听说前两题人均过...... 写法不优秀被卡到$#1067$...... T1:基础字符串练习题: 前缀 ...
- 【LGR-054】洛谷10月月赛II
[LGR-054]洛谷10月月赛II luogu 成功咕掉Codeforces Round #517的后果就是,我\(\mbox{T4}\)依旧没有写出来.\(\mbox{GG}\) . 浏览器 \( ...
- 洛谷10月月赛II题解
[咻咻咻] (https://www.luogu.org/contestnew/show/11616) 令人窒息的洛谷月赛,即将参加NOIp的我竟然只会一道题(也可以说一道也不会),最终145的我只能 ...
- 洛谷10月月赛Round.3
Rank11:260=60+100+100 P2409 Y的积木 题目背景 Y是个大建筑师,他总能用最简单的积木拼出最有创意的造型. 题目描述 Y手上有n盒积木,每个积木有个重量.现在他想从每盒积木中 ...
- 洛谷10月月赛Round.1| P3398 仓鼠找sugar[LCA]
题目描述 小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而他的基友同时要从他的卧室(c) ...
- 洛谷10月月赛Round.1| P3400 仓鼠窝[单调栈]
题目描述 萌萌哒的Created equal是一只小仓鼠,小仓鼠自然有仓鼠窝啦. 仓鼠窝是一个由n*m个格子组成的行数为n.列数为m的矩阵.小仓鼠现在想要知道,这个矩阵中有多少个子矩阵!(实际上就是有 ...
- 洛谷10月月赛Round.1| P3399 丝绸之路 [DP]
题目背景 张骞于公元前138年曾历尽艰险出使过西域.加强了汉朝与西域各国的友好往来.从那以后,一队队骆驼商队在这漫长的商贸大道上行进,他们越过崇山峻岭,将中国的先进技术带向中亚.西亚和欧洲,将那里的香 ...
- 洛谷10月月赛R2·浴谷八连测R3题解
早上打一半就回家了... T1傻逼题不说了...而且我的写法比题解要傻逼很多T T T2可以发现,我们强制最大值所在的块是以左上为边界的倒三角,然后旋转4次就可以遍历所有的情况.所以二分极差,把最大值 ...
随机推荐
- VMware 15 搭建MacOS 10.14教程
写于2018.12.23 教程原文链接:https://pan.baidu.com/s/1wvNYg_MQH_lwewKbpCQ5_Q ———————————————————————————————— ...
- Android-Studio:Cannot reload AVD list
Android-Studio:Cannot reload AVD list 今天用Android-Studio时点击"RUN"后出现如下错误,特此记录一下解决方案. Cannot ...
- Linux shell - ps,wc命令用法
例1. 查看Oracle数据库活动进程LOCAL=NO,输出行数 oracle@sha> ps -ef|grep LOCAL=NO|wc -l 15 解释:ps -ef是查看所有的进程的 然后用 ...
- Linux随笔 - vi/vim 编辑器显示行号
显示行号 1. 打开vi 编辑器 2. 输入 :set number 3. 回车 关闭行号显示 1. 打开vi 编辑器 2. 输入 :set nonumber 3. 回车 行号在每次打开 vi/v ...
- bp文件错误消除
代码文件报错, error: unused parameter 'data' [-Werror,-Wunused-parameter]‘ 按提示在cflags中加入: "-Wunused-p ...
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_04 数据结构_1_数据结构_栈
2.1 数据结构有什么用? 当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类 的.好用吗?好用,这就是数据结构的用处,只不过你在不知不 ...
- Jenkins简介&邮箱配置
一.Jenkins基本介绍: Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.--摘自百科 二 ...
- usb接口类型 简单分类辨识
usb接口类型 简单分类辨识 - [相似百科] 庆欣 0.0 4 人赞同了该文章 1. 先放图,随着越来越多的接触智能设备,会遇到各种各样的usb接口,对于很多人来说,接口类型只有:usb接口,安卓接 ...
- 【Linux】limits.conf 不重启就生效或者不生效的原因
前阵子,我要用到使LInux的文件打开数为65534个,而且需要永久生效,于是将配置写到了: vim /etc/security/limits.conf * soft nofile 65534* ha ...
- MIUI8改MAC
1.手机Root 2.RE文件管理器复制:/data/nvram/APCFG/APRDEB/WIFI 到电脑上 3.如下图用UltraEdit打开WIFI文件修改MAC 4.拷贝修改后的WIFI文件到 ...