【JZOJ6375】华灵[蝶妄想]
description
analysis
明显括号序长度是偶数,如果其中一个是奇数,那么只能让这奇数行或列是括号序
对于两个都是偶数,需要分类讨论,假设\(n<m\)
有一种是牺牲掉\(n\over 2\)行,第一行全左括号,最后一行全右括号
,比如这样,这个比较容易想到,答案是\(m+{n\over 2}-1\)
有一种是牺牲掉第一行列、最后一行列,结果剩下\(n+m-4\)行列全都可行
,像这样构造,最后取两个中较优的
code
#pragma GCC optimize("O3")
#pragma G++ optimize("O3")
#include<stdio.h>
#include<string.h>
#include<algorithm>
#define ll long long
#define reg register ll
#define max(x,y) ((x>y)?(x):(y))
#define min(x,y) ((x<y)?(x):(y))
#define fo(i,a,b) for (reg i=a;i<=b;++i)
#define fd(i,a,b) for (reg i=a;i>=b;--i)
using namespace std;
ll n,m;
int main()
{
//freopen("T1.in","r",stdin);
freopen("butterfly.in","r",stdin);
freopen("butterfly.out","w",stdout);
scanf("%lld%lld",&n,&m);
if (n&1)
{
if (m&1)
{
fo(i,1,n){fo(j,1,m)putchar('(');putchar('\n');}
return 0;
}
fo(i,1,n){fo(j,1,m/2)putchar('(');fo(j,1,m/2)putchar(')');putchar('\n');}
return 0;
}
if (m&1)
{
fo(i,1,n){fo(j,1,m)putchar(i<=n/2?'(':')');putchar('\n');}
return 0;
}
if (n+m-4>max(n,m)+min(n,m)/2-1)
{
fo(j,1,m)putchar('(');putchar('\n');
fo(i,2,n-1)
{
putchar('(');
fo(j,2,m-1)putchar(!((i+j)&1)?'(':')');
putchar(')'),putchar('\n');
}
fo(j,1,m)putchar(')');putchar('\n');
return 0;
}
if (n>m)
{
fo(i,1,n/2)
{
fo(j,1,m/2)putchar('('),putchar(')');
putchar('\n');
fo(j,1,m/2)putchar('(');
fo(j,1,m/2)putchar(')');
putchar('\n');
}
return 0;
}
fo(j,1,m)putchar('(');putchar('\n');
fo(i,2,n-1)
{
//fo(j,1,m)putchar((!(i&1) && j<=m/2) || ((i&1) && j>m/2)?')':'(');
fo(j,1,m/2)putchar(!(i&1)?'(':')'),putchar(!(i&1)?')':'(');
putchar('\n');
}
fo(j,1,m)putchar(')');putchar('\n');
printf("!@##!@\n");
return 0;
}
【JZOJ6375】华灵[蝶妄想]的更多相关文章
- 9 Days 停课修炼题解集
xj4604 排序 \(n,k <= 1e5\). 先考虑二分出这个值,check 有多少段的平均值小于这个 mid,这个在之前的复活赛中是原题 T4,数形结合,$ \text{Average} ...
- 《西部世界》S2E9:蝶化庄周,浮生若梦
原以为第九集能解开本季大半的疑惑,结果还是被骗了……看来<西部世界>铁了心要把主要秘密都放在大结局里揭晓,大家就再等一周吧. 尽管如此,本集还是说清了不少谜团:比如威廉和格蕾丝的真实身份, ...
- 公司管理系列--Facebook 如何化茧成蝶[转]
拒绝传统,看 Facebook 如何以三大法宝化茧成蝶:人才吸引.工程师文化和项目开发流程 我将结合之前在Facebook的四年工作经验,介绍Facebook创新的管理方法以及整个工程文化形成的方 ...
- 架构妄想:AJAX + REST
William Vambenepe的最新文章,AJAX + REST是最新的架构妄想,让我们回想起了一个具有15年历史的架构,它曾被寄期望对Web产生革命性的影响. 在该架构里,Web服务器将返回包含 ...
- 3ds Max制作妄想中的外星人形象
来源:CG游 作者:FedericoScarbini 使用软件:3ds Max, Photoshop, ZBrush 简介 我认为每一个人都曾经在他的人生中的某些时刻妄想着关于外星人的事情;我猜这是很 ...
- 华为云BigData Pro解读: 鲲鹏云容器助力大数据破茧成蝶
华为云鲲鹏云容器 见证BigData Pro蝶变之旅大数据之路顺应人类科技的进步而诞生,一直顺风顺水,不到20年时间,已渗透到社会生产和人们生活的方方面面,.然而,伴随着信息量的指数级增长,大数据也开 ...
- 蝶式套利(butterfly spread)
多头蝶式套利.预期市场价格趋于稳定,希望在这个价格区间内能获利,可选用多头蝶式套利,以较低的议定价格买进一个看涨期权,又以较高的议定价格买进一个看涨期权,同时又以介于上述2个议定价格之间的中等的议定价 ...
- 化茧成蝶,开源NetWorkSocket通讯组件
前言 前后历时三年,期间大量参考.Net Framework和Asp.net MVC源代码,写写删删再重构,组件如今更新到V1.5.x了.从原来的丑小鸭,变成今天拥有稳定和强大的tcp协议支持基础层, ...
- Effective C++ -----条款21:必须返回对象时,别妄想返回其reference
绝不要返回pointer或reference指向一个local stack对象,或返回reference指向一个heap-allocated对象,或返回pointer或reference指向一个loc ...
随机推荐
- 四(2)、springcloud之Ribbon负载均衡
2.Ribbon负载均衡 Ribbon在工作时分成两步第一步先选择 EurekaServer ,它优先选择在同一个区域内负载较少的server. 第二步再根据用户指定的策略,在从server取到的 ...
- python调用tushare获取A股周线行情
接口:weekly 描述:获取A股周线行情 限量:单次最大3700,总量不限制 积分:用户需要至少300积分才可以调取,具体请参阅本文最下方积分获取办法 注:tushare模块下载和安装教程,请查阅我 ...
- 搭建一个自己的SVN服务器
其实方法非常简单,点点鼠标就好了. 上网搜索“VisualSVN Server”,一般来说都是会找到 https://www.visualsvn.com/server/ 这个网站的. 点击上边的Dow ...
- 微信小程序开发入门与实践
基础知识---- MINA 框架 为方便微信小程序开发,微信为小程序提供了 MINA 框架,这套框架集成了大量的原生组件以及 API.通过这套框架,我们可以方便快捷的完成相关的小程序开发工作. MIN ...
- 编写Storm程序
- Bribing FIPA
Bribing FIPA 给出多棵有n个节点的有根树,第i个节点有一个权值\(a_i\),定义一个点能控制的点为其所有的子节点和它自己,询问选出若干个点的最少的权值之和,并且能够控制大于等于m个点,\ ...
- delphi xe10 获取屏幕截图
//截取屏幕图片 function MakeScaleScreenshot(Sender: TControl): TBitmap; function GetScreenScale: Single; v ...
- Nginx被动健康检查和主动健康检查
1.被动健康检查 Nginx自带有健康检查模块:ngx_http_upstream_module,可以做到基本的健康检查,配置如下: upstream cluster{ server max_fail ...
- Python ORM封装
import sys import asyncio import logging logging.basicConfig(level=logging.INFO) # 一次使用异步 处处使用异步 imp ...
- Lua的控制流程
一.条件语句 if语句 if语句是由一个布尔表达式作为条件判断,或者紧跟其他语句组成. if else语句 if语句可以是else搭配使用,在if条件表达式为false时执行else语句代码 if嵌套 ...