Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A.B.C
来源:互联网 发布:firefox 禁用js 编辑:程序博客网 时间:2024/05/16 16:11
A. Andryusha and Socks
思路:模拟即可
#include<bits/stdc++.h>using namespace std;const int maxn=1e5+10;bool vis[maxn];int main(){ int n; scanf("%d",&n); memset(vis,false,sizeof(vis)); int now=0,maxx=0; for(int i=0;i<2*n;i++){ int temp; scanf("%d",&temp); if(!vis[temp]){ now+=1; vis[temp]=true; }else{ now-=1; } if(now>maxx) maxx=now; } printf("%d",maxx);}
B. The Meeting Place Cannot Be Changed
思路:二分搜索,如果时间t可以满足所有人到达同一个点,则检查t/2是否也可以,然后根据题目要求精度达到1e-7退出
#include<bits/stdc++.h>using namespace std;const int maxn=60000+10;struct p{ int dis,v;};p per[maxn];int n;int md,sd;double s;double eps=1e-7;bool check(double t){ double a,b; for(int i=1;i<=n;i++){ double x=(double)per[i].dis-(double)per[i].v*t; double y=(double)per[i].dis+(double)per[i].v*t; if(i==1){ a=x,b=y; }else{ if(a>y || b<x) return false; if(a<=x) a=x; if(b>=y) b=y; } } return true;}int main(){ scanf("%d",&n); md=-1,sd=0x3f3f3f3f; for(int i=1;i<=n;i++){ scanf("%d",&per[i].dis); if(per[i].dis>md) md=per[i].dis; if(per[i].dis<sd) sd=per[i].dis; } for(int i=1;i<=n;i++){ scanf("%d",&per[i].v); } double l,r,ans; l=0,r=1e9; while(r-l>=eps){ double mid=(l+r)/2; if(check(mid)){ ans=mid; r=mid; }else l=mid; } printf("%.7f",ans);}
C. Andryusha and Colored Balloons
思路:树上dfs,每个节点的颜色是不和父亲节点和祖父亲节点相同的最小的未使用颜色。
#include<bits/stdc++.h>using namespace std;const int maxn=2*1e5+10;vector<int>E[maxn];int n;int ans[maxn];int fa[maxn];set<int>sum;void dfs(int now){ int cnt=1; for(int i=0;i<E[now].size();i++){ int p=E[now][i]; if(p!=fa[now]){ while(cnt==ans[now] || cnt==ans[fa[now]]) cnt++; ans[p]=cnt; sum.insert(cnt); fa[p]=now; dfs(p); cnt++; } }}int main(){ scanf("%d",&n); for(int i=1;i<n;i++){ int a,b; scanf("%d%d",&a,&b); E[a].push_back(b); E[b].push_back(a); } ans[1]=1; fa[1]=1; dfs(1); sum.insert(1); printf("%d\n",sum.size()); for(int i=1;i<=n;i++) printf("%d ",ans[i]);}
0 0
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)【A,B,C】
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)A,B,C
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A.B.C
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B.(三分)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B.(三分)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) C (dfs+vector)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) C
- Codeforces Round #403 (Div. 1, based on Technocup 2017 Finals) A. Andryusha and Colored Balloons
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Change
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Change
- [Updating]Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)解题报告
- 【解题报告】Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) 题解(ABCDE) (二分,dfs序,数据结构)
- Codeforces Round #440 (Div. 2, based on Technocup 2018 Elimination Round 2) A-C题解
- PAT 反转链表
- 修改jquery文件上传插件uploadify的英文为中文
- 在Python2.7下如何安装TA-lib库
- 内部排序(8种)
- android AFinal 四大基础使用解析
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A.B.C
- 互联网之道,看电商的数据化管理方案
- Longest Substring Without Repeating Characters(最长的无重复的字串)
- 带头结点单链表的就地逆置
- jquery.ajaxfileupload.js在谷歌浏览器下二次请求后台没有接收
- 20170307笔记 配置EXT.NET环境
- mysql5.7管理
- selenium+python:基本用法
- Android着色器tint相关剖析