Codeforces_813
A.统计总时间,从总时间开始找第一个能提交的点。
#include<bits/stdc++.h>
using namespace std; int n,m,a[],ok[] = {}; int main()
{
ios::sync_with_stdio();
cin >> n;
int sum = ;
for(int i = ;i <= n;i++) cin >> a[i],sum += a[i];
cin >> m;
for(int i = ;i <= m;i++)
{
int x,y;
cin >> x >>y;
for(int j = x;j <= y;j++) ok[j] = ;
}
for(int i = sum;i <= ;i++)
{
if(ok[i])
{
cout << i << endl;
return ;
}
}
cout << - << endl;
return ;
}
B.把每个unlucky值都算出来,再算最长段。
#include<bits/stdc++.h>
using namespace std; long long x,y,l,r,a[],b[]; int main()
{
ios::sync_with_stdio();
cin >> x >> y >> l >> r;
int cnt1 = ,cnt2 = ;
a[++cnt1] = ;
b[++cnt2] = ;
while(a[cnt1] <= r/x)
{
a[cnt1+] = a[cnt1]*x;
cnt1++;
}
while(b[cnt2] <= r/y)
{
b[cnt2+] = b[cnt2]*y;
cnt2++;
}
set<long long> s;
for(int i = ;i <=cnt1;i++)
{
if(a[i] > r) continue;
for(int j = ;j <= cnt2;j++)
{
if(b[j] > r) continue;
if(a[i]+b[j] < l) continue;
if(a[i]+b[j] > r) continue;
s.insert(a[i]+b[j]);
}
}
s.insert(l-);
s.insert(r+);
long long ans = ;
for(auto it = ++s.begin();it != s.end();it++)
{
long long xx = *it;
it--;
long long yy = *it;
it++;
ans = max(ans,xx-yy-);
}
cout << ans << endl;
return ;
}
C.分两种情况,Bob一直往下跑到叶子节点或者先往上跑,再往下跑到更深的叶子节点。
#include<bits/stdc++.h>
using namespace std; int n,x,a[] = {},maxx[],ok[] = {};
int ans;
vector<int> v[]; void dfs1(int now,int pre)
{
maxx[now] = a[now];
for(int i = ;i < v[now].size();i++)
{
int t = v[now][i];
if(t == pre) continue;
a[t] = a[now]+;
dfs1(t,now);
if(ok[t]) ok[now] = ;
maxx[now] = max(maxx[now],maxx[t]);
}
} int main()
{
ios::sync_with_stdio();
cin >> n >> x;
ok[x] = ;
for(int i = ;i < n;i++)
{
int x,y;
cin >> x >> y;
v[x].push_back(y);
v[y].push_back(x);
}
dfs1(,-);
ans = maxx[x];
for(int i = ;i <= n;i++)
{
if(ok[i])
{
if(a[x]-a[i] < a[i]) ans = max(ans,maxx[i]);
}
}
cout << ans* << endl;
return ;
}
Codeforces_813的更多相关文章
随机推荐
- 1031 查验身份证 (15 分)C语言
题目描述 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10 ...
- 小小知识点(五十一)——6G扬帆起航:拍赫兹通信与健康泛在网络助推6G新应用
转自IEEE科技纵览 https://weibo.com/ttarticle/p/show?id=2309404454066502631625 6G扬帆起航:拍赫兹通信与健康泛在网络助推6G新应用 ...
- python之嵌套函数调用
#定义嵌套函数 def func1(): print('this is func1') def func2(): print('this is func2')#调用1func1()输出:this is ...
- 倍增ST应用 选择客栈(提高组)
重磅例题!ST表应用!提高组Getting! 1125: B15-倍增-习题:选择客栈[ST表应用] 时间限制: 1 Sec 内存限制: 128 MB提交: 35 解决: 12[提交] [状态] ...
- 为什么说ArrayList是线程不安全的?
一.概述 对于ArrayList,相信大家并不陌生.这个类是我们平时接触得最多的一个列表集合类. 面试时相信面试官首先就会问到关于它的知识.一个经常被问到的问题就是:ArrayList是否是线程安全的 ...
- String中文字符转码
如何使用String构造方法和String.getBytes()做好中文字符转码 @Test public void test() { String testStr = "中"; ...
- ancconda创建爬虫项目
# 安装 conda env list conda create -n <envname> conda activate <envname> conda install scr ...
- 安装lxml
1.安装wheel pip3 install -i https://pypi.douban.com/simple wheel 2.下载lxml库的whl文件 下载地址:https://www.lfd. ...
- [bzoj4824][洛谷P3757][Cqoi2017]老C的键盘
Description 老 C 是个程序员. 作为一个优秀的程序员,老 C 拥有一个别具一格的键盘,据说这样可以大幅提升写程序的速度,还能让写出来的程序 在某种神奇力量的驱使之下跑得非常快.小 Q 也 ...
- Dynamics 365 CRM 配置field service mobile
配置field service mobile其实微软是有官方文档的, 但是没有坑的微软产品不是好产品. 一些细节设置文中还是没有考虑到的. 所以这里带大家配置一下field service mobil ...