洛谷八连测R4
1.逃避
https://www.luogu.org/problemnew/show/T14561
注意:
1.输入时需要用EOF判断,否则会TLE。
2.用flag判断字符是不是每一句首字母。
3.ASC('a')=97 ASC('A')=65
代码如下:
#include <cstdio>
char s;
int main()
{
bool flag = true;//用flag判断是否是每一句的首字母
while (scanf("%c",&s)!=EOF)//注意输入时要用EOF判断
{
if(s=='.')flag=true;
else if((s>='A'&&s<='Z')||(s>='a'&&s<='z'))
{
if(flag)
{
if(s>='a'&&s<='z')s-=;//'a'97 'A'65
flag=false;
}
else if(s>='A'&&s<='Z')s+=;
}
printf("%c",s);
}
return ;
}
2.可耻
https://www.luogu.org/problemnew/show/T14562
在考试时觉得每次删除数组中的两个数,都要移动大量数据使数组连贯,不太能实现。
个人想到的办法是开成二维数组,用a[i][1]记录数列,a[i][2]记录下一个数的位置。可惜在考试时写炸了。
题解的思路是:
使用链表,再用一个vis数组记录每个数有没有被删,从n到1扫一遍就可以了
代码如下:
#include <cstdio>
int n, p[], l[], r[];
bool vis[];
void shan(int x)
{
vis[x]=;
vis[r[x]]=;
printf("%d %d ",x,r[x]);
r[l[x]]=r[r[x]];
l[r[r[x]]]=l[x];
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&p[i]);
for(int i=;i<=n;i++)
{
l[p[i]]=p[i-];
r[p[i]]=p[i+];
}
for(int i=n;i>=;i--)
if(!vis[i]&&r[i]!=)shan(i);
return ;
}
3.但有用
https://www.luogu.org/problemnew/show/T14563
考试没思路,暴力都想不出。
废话不多说,直接上题解。
根据题目,每行列操作的次数小于3。操作时行与列之间有影响,但列与列,行与行之间没有影响。可以枚举每行的操作,再用贪心计算每列,寻找答案。
参考代码如下:
#include<cstdio>
#include<algorithm>
using namespace std;
int n,m,a[][],cnt[],c1,c2,c0,res,ans;
void solve()
{
res=;
for(int i=;i<=m;i++)
{
c0=c2=c1=;
for(int j=;j<=n;j++)
{
if((a[j][i]+cnt[j])%==&&a[j][i]+cnt[j]<=)c0++;
if((a[j][i]+cnt[j]+)%==&&a[j][i]+cnt[j]+<=)c1++;
if((a[j][i]+cnt[j]+)%==&&a[j][i]+cnt[j]+<=)c2++;
}
res+=max(max(c0,c1),c2);
}
ans=max(ans,res);
}
void dfs(int dep)
{
if(dep==n+)
{
solve();
return;
}
for(int i=;i<=;i++)
{
cnt[dep]=i;
dfs(dep+);
}
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&a[i][j]);
dfs();
printf("%d\n",ans);
return ;
}
洛谷八连测R4的更多相关文章
- 洛谷八连测R6
本次测试暴0!!!还有两周就要考试啦!!! 看题目时觉得难度不大,就直接写正解,没有参照数据,导致测出的结果和预想有较大差距. 不过得到经验,不管题目难易(除了D1T1)都要参照数据一部分一部分写,那 ...
- 洛谷八连测R5题解
woc居然忘了早上有八连测T T 还好明早还有一场...今天的题除了T3都挺NOIP的... T1只需要按横坐标第一关键字,纵坐标第二关键字排序一个一个取就好了... #include<iost ...
- 浴谷八连测R4题解
一开始出了点bug能看见排行榜,于是我看见我半个小时就A掉了前两题,信心场QAQ T1字符串题就不说了qwq #include<iostream> #include<cstring& ...
- 洛谷10月月赛R2·浴谷八连测R3题解
早上打一半就回家了... T1傻逼题不说了...而且我的写法比题解要傻逼很多T T T2可以发现,我们强制最大值所在的块是以左上为边界的倒三角,然后旋转4次就可以遍历所有的情况.所以二分极差,把最大值 ...
- 浴谷八连测R6题解(收获颇丰.jpg)
这场的题都让我收获颇丰啊QWQ 感谢van♂老师 T1 喵喵喵!当时以为经典题只能那么做, 思维定势了... 因为DP本质是通过一些条件和答案互相递推的一个过程, 实际上就是把条件和答案分配在DP的状 ...
- 【BZOJ】1012: [JSOI2008]最大数maxnumber /【洛谷】1198(线段树)
Description 现在请求你维护一个数列,要求提供以下两种操作:1. 查询操作.语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值.限制:L不超过当前数列的长度.2. 插 ...
- 【洛谷P1352】没有上司的舞会
[洛谷P1352]没有上司的舞会 x舷售 锚」翅θ 但是 拙臃 蓄ⅶ榔 暄条熨卫 翘ヴ馇 表现无愧于雪月工作室的核心管理 爸惚扎掬 颇瓶 芟缆肝 貌痉了 洵┭笫装 嗝◇裴腋 褓劂埭 ...
- 洛谷U19464 山村游历(Wander)(LCT,Splay)
洛谷题目传送门 LCT维护子树信息常见套路详见我的总结 闲话 题目摘自WC模拟试题(by Philipsweng),原题目名Wander,"山村游历"是自己搞出来的中文名. 数据自 ...
- [Noi2016]区间 BZOJ4653 洛谷P1712 Loj#2086
额... 首先,看到这道题,第一想法就是二分答案+线段树... 兴高采烈的认为我一定能AC,之后发现n是500000... nlog^2=80%,亲测可过... 由于答案是求满足题意的最大长度-最小长 ...
随机推荐
- asp.net连接MySQL数据库错误-Out of sync with server
问题 网上说:http://wenda.haosou.com/q/1386389928069965 昨晚这个问题真的费了我不少时间(晚上9到凌晨2点),网上找解决方案,然后一个个尝试,没有成功.准备放 ...
- Java复习8.多线程
Java复习8 多线程知识 20131007 前言: 在Java中本身就是支持多线程程序的,而不是像C++那样,对于多线程的程序,需要调用操作系统的API 接口去实现多线程的程序,而Java是支持多线 ...
- windows 2008 server R2 服务器docker安装
1.安装包选择 windows win10 较新版本,使用 Get Docker for Windows (Stable) 或者 Get Docker for Windows (Edge) 其余使用 ...
- SQL Plus常用命令
1.常用命令:显示当前用户名:show user登录到数据库:conn[etc] 用户名/密码@网络[as sysdba / as sysoper] 简单写法:conn 用户名/密码 con ...
- 正则表达式 preg_match 匹配中文
preg_match 匹配中文出错 2010年01月06日 星期三 14:55 错误提示: Warning: preg_match() [function.preg-match]: Compilati ...
- windows下gvim搭建IDE
原文转载自:手把手教你把Vim改装成一个IDE编程环境(图文) 如侵犯您的版权,请联系:windeal12@qq.com By: 吴垠 Date: 2007-09-07 Version: 0.5 Em ...
- 使用pipework将Docker容器配置到本地网络环境中
使用pipework将Docker容器配置到本地网络环境中 需求 在使用Docker的过程中,有时候我们会有将Docker容器配置到和主机同一网段的需求.要实现这个需求,我们只要将Docker容器和主 ...
- boost split字符串
boost split string , which is very convenience #include <string> #include <iostream> #in ...
- 使用LinkedBlockingQueue来实现生产者消费者的例子
工作中,经常有将文件中的数据导入数据库的表中,或者将数据库表中的记录保存到文件中.为了提高程序的处理速度,可以设置读线程和写线程,这些线程通过消息队列进行数据交互.本例就是使用了LinkedBlock ...
- puremvc源码阅读
1.mediator作为ui管理器,是设计成可以list多个notification 2.所有ui想要监听notification,都需要register到facade中 3.puremvc只负责消息 ...