浴谷八连测R4题解
一开始出了点bug能看见排行榜,于是我看见我半个小时就A掉了前两题,信心场QAQ
T1字符串题就不说了qwq
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cstdio>
#include<algorithm>
#define ll long long
using namespace std;
const int maxn=,inf=1e9;
int n,m,x,y,z,tot;
char c;
int main()
{
int daxie=;
while((c=getchar())!=EOF)
{
if(('a'<=c&&c<='z')||('A'<=c&&c<='Z'))
{
if(daxie)
{
if('a'<=c&&c<='z')putchar(c-'a'+'A');
else putchar(c);
daxie=;
}
else
{
if('a'<=c&&c<='z')putchar(c);
else putchar(c-'A'+'a');
}
}
else if(c=='.')daxie=,putchar('.');
else putchar(' ');
}
return ;
}
T2直接贪心不断找出最大的数和他的下一个数,用双向链表维护一下前面和后面的数就好了
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cstdio>
#include<algorithm>
#include<queue>
#define ll long long
using namespace std;
const int maxn=,inf=1e9;
struct poi{int pos,w;};
priority_queue<poi>q;
bool operator<(poi a,poi b){return a.w<b.w;}
int n,m,x,y,z,tot;
int nxt[maxn],pre[maxn],a[maxn];
bool v[maxn];
void read(int &k)
{
int f=;k=;char c=getchar();
while(c<''||c>'')c=='-'&&(f=-),c=getchar();
while(c<=''&&c>='')k=k*+c-'',c=getchar();
k*=f;
}
void del(int x)
{
nxt[pre[x]]=nxt[nxt[x]];
pre[nxt[nxt[x]]]=pre[x];
pre[x]=nxt[x]=pre[nxt[x]]=nxt[nxt[x]]=;
}
int main()
{
read(n);
for(int i=;i<=n;i++)read(a[i]),pre[i]=i-,nxt[i]=i+,q.push((poi){i,a[i]});
for(int i=;i<=n>>;i++)
{
poi t=q.top();q.pop();
while(v[t.pos]||nxt[t.pos]>n)t=q.top(),q.pop();
printf("%d %d ",t.w,a[nxt[t.pos]]);
v[nxt[t.pos]]=;del(t.pos);
}
return ;
}
T3可以发现每行每列最多加两次,因为每隔2个数就有一个稳数...于是3^n枚举列的状态,算出每一行不加,加一个,加两个哪个优,每一行互不影响,于是每一行贪心地选一个最大的就好了
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cstdio>
#include<algorithm>
#define ll long long
using namespace std;
const int maxn=,inf=1e9;
int n,m,x,y,z,ans;
int mp[maxn][maxn],mi[maxn];
void read(int &k)
{
int f=;k=;char c=getchar();
while(c<''||c>'')c=='-'&&(f=-),c=getchar();
while(c<=''&&c>='')k=k*+c-'',c=getchar();
k*=f;
}
int main()
{
read(n);read(m);
for(int i=;i<=n;i++)for(int j=;j<=m;j++)read(mp[i][j]);
mi[]=;for(int i=;i<=max(n,m);i++)mi[i]=mi[i-]*;
for(int s=;s<=mi[m];s++)
{
int now=;
for(int i=;i<=n;i++)
{
int tmp1,tmp2,tmp3;tmp1=tmp2=tmp3=;
for(int j=;j<=m;j++)
if(s/mi[j-]%==)
{
tmp1+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp2+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp3+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
}
else if(s/mi[j-]%==)
{
tmp1+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp2+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp3+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
}
else if(s/mi[j-]%==)
{
tmp1+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp2+=(mp[i][j]==||mp[i][j]==||mp[i][j]==||mp[i][j]==);
tmp3+=(mp[i][j]==-||mp[i][j]==||mp[i][j]==||mp[i][j]==);
}
now+=max(tmp1,max(tmp2,tmp3));
}
ans=max(ans,now);
}
printf("%d\n",ans);
return ;
}
浴谷八连测R4题解的更多相关文章
- 洛谷10月月赛R2·浴谷八连测R3题解
早上打一半就回家了... T1傻逼题不说了...而且我的写法比题解要傻逼很多T T T2可以发现,我们强制最大值所在的块是以左上为边界的倒三角,然后旋转4次就可以遍历所有的情况.所以二分极差,把最大值 ...
- 浴谷八连测R6题解(收获颇丰.jpg)
这场的题都让我收获颇丰啊QWQ 感谢van♂老师 T1 喵喵喵!当时以为经典题只能那么做, 思维定势了... 因为DP本质是通过一些条件和答案互相递推的一个过程, 实际上就是把条件和答案分配在DP的状 ...
- 洛谷八连测R5题解
woc居然忘了早上有八连测T T 还好明早还有一场...今天的题除了T3都挺NOIP的... T1只需要按横坐标第一关键字,纵坐标第二关键字排序一个一个取就好了... #include<iost ...
- 洛谷八连测R4
1.逃避 https://www.luogu.org/problemnew/show/T14561 注意: 1.输入时需要用EOF判断,否则会TLE. 2.用flag判断字符是不是每一句首字母. 3. ...
- 洛谷八连测R6
本次测试暴0!!!还有两周就要考试啦!!! 看题目时觉得难度不大,就直接写正解,没有参照数据,导致测出的结果和预想有较大差距. 不过得到经验,不管题目难易(除了D1T1)都要参照数据一部分一部分写,那 ...
- 洛谷P2832 行路难 分析+题解代码【玄学最短路】
洛谷P2832 行路难 分析+题解代码[玄学最短路] 题目背景: 小X来到了山区,领略山林之乐.在他乐以忘忧之时,他突然发现,开学迫在眉睫 题目描述: 山区有n座山.山之间有m条羊肠小道,每条连接两座 ...
- 【洛谷P3960】列队题解
[洛谷P3960]列队题解 题目链接 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. Sylvia 所在的方阵中有 n×m ...
- 浴谷夏令营例题Codeforces827DBest Edge Weight(三个愿望,一次满足~(大雾
这题在浴谷夏令营wyx在讲的最小生成树的时候提到过,但并没有细讲怎么写... 这题可以用三种写法写,虽然只有两种能过...(倍增/倍增+并查集/树链剖分 先跑出最小生成树,分类讨论,在MST上的边,考 ...
- 洛谷P2312 解方程题解
洛谷P2312 解方程题解 题目描述 已知多项式方程: \[a_0+a_1x+a_2x^2+\cdots+a_nx^n=0\] 求这个方程在 \([1,m]\) 内的整数解(\(n\) 和 \(m\) ...
随机推荐
- Java+Selenium 3.x 实现Web自动化 - Maven打包TestNG,利用jenkins执行测试
1. Jenkins本地执行测试 or 服务器端执行测试 测试代码计划通过jenkins执行时,通过网上查询各种教程,大多数为本地执行测试,由此可见,本地执行是大多数人的选择. 经过探讨,最终决定采用 ...
- katalon系列十五:给浏览器添加cookie自动登陆
import org.openqa.selenium.Cookieimport org.openqa.selenium.WebDriverimport com.kms.katalon.core.web ...
- 《C++设计新思维》勘误,附C++14新解法
勘误: 原书(中文版)3.13节,65-69页中GenScatterHierarchy以及FieldHelper均存在问题,当TypeList中类型有重复时,无法通过编译(原因在于“二义性基类”). ...
- selenium 列表循环定位方法。
话不多说,直接上代码. 就是循环第一层,然后拼接,然后继续循环,继续屏接,任你多少层都不是问题. def c_select(self, values, text): """ ...
- 【python 3.6】使用itertools.product进行排列组合
#python 3.6 #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'BH8ANK' import itertools colo ...
- 多重共性和VIF检验
图片来源https://wenku.baidu.com/view/7008df8383d049649b66581a.html 和 https://wenku.baidu.com/view/6acdf9 ...
- python 抓取网页(一)
#-------PYTHON获取网页内容-------------# import sys, urllib url = "http://www.baidu.com" #网页地址 w ...
- winform界面之固定大小随dpi
场景: 已经更改成大小可随dpi改变,可是在用applyresoures()之后(添加更改语言功能),发现控件大小失真. 分析:applyresoures()是把该控件的属性改为程序设计的固定大小,不 ...
- mininet实验 连接floodlight控制器
参考博客一 参考博客二 事先准备-floodlight安装 Java安装方法及环境变量配置 执行ifconfig命令获取floodlight所在服务器的IP地址. 1.启动floodlight jav ...
- DP---基本思想 具体实现 经典题目 POJ1160 POJ1037
POJ1160, post office.动态规划的经典题目.呃,又是经典题目,DP部分的经典题目怎就这么多.木有办法,事实就这样. 求:在村庄内建邮局,要使村庄到邮局的距离和最小. 设有m个村庄,分 ...