CF #622 div.2
序
~ieowjf~~

真的只有老邱在支持我吗(雾
#622 T1
此题做法显然,但是,不知为何,就是会评测机有小问题。。。无语
上 SingerCoder 的码,不知为何,我的码风总是毒瘤
#include<cstdio>
using namespace std;
inline void solve()
{
int a[4];
scanf("%d %d %d",&a[1],&a[2],&a[3]);
int ans=0;
for(int i=1;i<=3;++i)if(a[i]>0)a[i]--,ans++;//
bool flag=0;
for(int i=1;i<=3;++i)//
{
if(a[i]>=2)
{
flag=1;
int id[3],in=0;
for(int j=1;j<=3;++j)if(i!=j && a[j]>0){ans++,a[i]--,a[j]--;id[++in]=j;}
if(in>=2 && a[id[1]]>0 && a[id[2]]>0)a[id[1]]--,a[id[2]]--,ans++;
break;
}
}
if(!flag)
{
for(int i=1;i<=3;++i)
for(int j=i+1;j<=3;++j)if(a[i]>0 && a[j]>0)
{
ans++;a[i]--;a[j]--;
}
}
if(a[1]>0 && a[2]>0 && a[3]>0)++ans;
printf("%d\n",ans);
}
int main()
{
// freopen("in.txt","r",stdin);
int t;
scanf("%d",&t);
for(int i=1;i<=t;++i)solve();
return 0;
}
所以,他码风更毒瘤(逃。
#622 T2
此题,拿笔推推样例,结论显然,因为前两轮没有同一名的。。
/* make by ltao */
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <cmath>
#include <math.h>
#include <string.h>
#include <time.h>
#include <fstream>
#include <queue>
#include <deque>
#include <stack>
#include <list>
#include <map>
#include <vector>
#include <algorithm>
#define fake int
#define get() getchar()
using namespace std;
fake read(){
fake x=0;bool f=0;
char ch=get();
while(ch<'0'||ch>'9'){
if(ch=='-') f=1;
ch=get();
}
while(ch<='9'&&ch>='0'){
x=(x<<1)+(x<<3)+(ch-'0');
ch=get();
}
return f?-x:x;
}
int t,n,x,y;
int main(){
//freopen("ee.in","r",stdin);
scanf("%d",&t);
while(t--){
n=read();x=read();y=read();
if(x==n&&y==n){
printf("%d %d\n",n,n);
continue;
}
if(x==1&&y==1){
printf("1 1\n");
continue;
}
int k=x+y+1-n;
printf("%d ",max(k,1));
printf("%d\n",min(n,(x+y-1)));
}
return 0;
}
本人代码,因为人丑,常数都略大。。
其实,CF的题真的没什么好说的,真的是全靠分析,有时豁然开朗,想不到就很尴尬,对于我这种蒟蒻来说,还是多看看吧。。
大部分的题都有 \(O(n)\) 做法
#622 T3
此题,我发现性质,故而只需考虑在函数上的极值
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int Maxn=550000;
typedef long long ll;
ll t,a[Maxn],h[Maxn];
long long count(ll i){
long long ans1=a[i];
ll max1=a[i];
for(int j=i-1;j>=1;j--){
max1=min(max1,a[j]);
ans1+=max1;
}
max1=a[i];
for(int j=i+1;j<=t;j++){
max1=min(max1,a[j]);
ans1+=max1;
}
return ans1;
}
int main(){
//freopen("ee.in","r",stdin);
scanf("%lld",&t);
long long ans=0;int k;
for(int i=1;i<=t;i++) scanf("%lld",&a[i]);
for(int i=1;i<=t;i++){
if(a[i-1]<=a[i]&&a[i]>=a[i+1]){
ll lans=count(i);
if(lans>ans){
ans=lans;
k=i;
}
}
}
h[k]=a[k];
for(int i=k-1;i>=0;i--){
h[i]=min(h[i+1],a[i]);
}
for(int i=k+1;i<=t;i++){
h[i]=min(h[i-1],a[i]);
}
for(int i=1;i<=t;i++) printf("%lld ",h[i]);
return 0;
}
好像差点事。。。
CF #622 div.2的更多相关文章
- CF #376 (Div. 2) C. dfs
1.CF #376 (Div. 2) C. Socks dfs 2.题意:给袜子上色,使n天左右脚袜子都同样颜色. 3.总结:一开始用链表存图,一直TLE test 6 (1)如果需 ...
- CF #375 (Div. 2) D. bfs
1.CF #375 (Div. 2) D. Lakes in Berland 2.总结:麻烦的bfs,但其实很水.. 3.题意:n*m的陆地与水泽,水泽在边界表示连通海洋.最后要剩k个湖,总要填掉多 ...
- CF #374 (Div. 2) D. 贪心,优先队列或set
1.CF #374 (Div. 2) D. Maxim and Array 2.总结:按绝对值最小贪心下去即可 3.题意:对n个数进行+x或-x的k次操作,要使操作之后的n个数乘积最小. (1)优 ...
- CF #374 (Div. 2) C. Journey dp
1.CF #374 (Div. 2) C. Journey 2.总结:好题,这一道题,WA,MLE,TLE,RE,各种姿势都来了一遍.. 3.题意:有向无环图,找出第1个点到第n个点的一条路径 ...
- CF #371 (Div. 2) C、map标记
1.CF #371 (Div. 2) C. Sonya and Queries map应用,也可用trie 2.总结:一开始直接用数组遍历,果断T了一发 题意:t个数,奇变1,偶变0,然后与问的 ...
- CF #365 (Div. 2) D - Mishka and Interesting sum 离线树状数组
题目链接:CF #365 (Div. 2) D - Mishka and Interesting sum 题意:给出n个数和m个询问,(1 ≤ n, m ≤ 1 000 000) ,问在每个区间里所有 ...
- CF #365 (Div. 2) D - Mishka and Interesting sum 离线树状数组(转)
转载自:http://www.cnblogs.com/icode-girl/p/5744409.html 题目链接:CF #365 (Div. 2) D - Mishka and Interestin ...
- Codeforces Round #622 (Div. 2) C2. Skyscrapers (hard version)(单调栈,递推)
Codeforces Round #622 (Div. 2) C2. Skyscrapers (hard version) 题意: 你是一名建筑工程师,现给出 n 幢建筑的预计建设高度,你想建成峰状, ...
- Codeforces Round #622 (Div. 2) B. Different Rules(数学)
Codeforces Round #622 (Div. 2) B. Different Rules 题意: 你在参加一个比赛,最终按两场分赛的排名之和排名,每场分赛中不存在名次并列,给出参赛人数 n ...
随机推荐
- 腾讯云ubuntu服务器无法以root身份ssh连接
在腾讯云上拿到的Ubuntu主机分配给的用户是ubuntu用户,并不是root用户,而阿里云上拿到的Ubuntu主机分配给的用户就是root用户.如果没有root用户权限做事情会变得麻烦,每次做什么都 ...
- SpringBoot安全篇Ⅵ --- 整合Spring Security
知识储备: 关于SpringSecurity的详细学习可以查看SpringSecurity的官方文档. Spring Security概览 应用程序的两个主要区域是"认证"和&qu ...
- laravel路由与控制器(资源路由restful)
目前我们大致了解了laravel下,在开始一个Http程序需要先定义路由.之前的例子中,我们的业务逻辑都是在路由里实现,这对于简单的网站或web应用没什么问题,当我们需要扩大规模,程序变得复杂,分层的 ...
- 深入理解Java虚拟机内存模型
前言 本文中部分内容引用至<深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)>第12章,如果有兴趣可自行深入阅读,文末放有书籍PDF版本连接. 一.物理机中的并发 物理机遇到的并 ...
- Capslock+程序介绍
一直为编程时方向键不在盲打区域苦恼,今天接触了一个非常好的软件Capslock+. 软件特别小,一共只有九百多K,甚至不能称为软件,只能算一个很小的脚本了.但解决了我非常大的一个难题.安装好软件后可以 ...
- Ops: 高效组合命令集合
简介 本篇博客收集一些常用的复杂命令组合,这些命令组合能够高效的定位.分析.处理一些问题,希望对需要的小伙伴有所帮助. 命令集合 批量备份文件 将名称为config.xml的文件查找出来,并在原目录备 ...
- Chrome恢复显示网址 https:// 和 www
文章来自我的博客: https://blog.ljyngup.com/archives/686.html/ Chrome这个新规弄得我也很蛋疼,每次一点输入框就突然突出来一下.后来在Hostloc论坛 ...
- Linux gcc链接动态库出错:LIBRARY_PATH和LD_LIBRARY_PATH的区别
昨天在自己的CentOs7.1上写makefile的时候,发现在一个C程序在编译并链接一个已生成好的lib动态库的时候出错.链接命令大概是这样的: [root@typecodes tcpmsg]# g ...
- Thread Based Parallelism - Thread in a Subclass
Thread Based Parallelism - Thread in a Subclass 1 import threading import time exit_Flag = 0 class m ...
- Hexo搭建静态博客踩坑日记(二)
前言 Hexo搭建静态博客踩坑日记(一), 我们说到利用Hexo快速搭建静态博客. 这节我们就来说一下主题的问题与主题的基本修改操作. 起步 chrome github hexo git node.j ...