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】华灵[蝶妄想]的更多相关文章

  1. 9 Days 停课修炼题解集

    xj4604 排序 \(n,k <= 1e5\). 先考虑二分出这个值,check 有多少段的平均值小于这个 mid,这个在之前的复活赛中是原题 T4,数形结合,$ \text{Average} ...

  2. 《西部世界》S2E9:蝶化庄周,浮生若梦

    原以为第九集能解开本季大半的疑惑,结果还是被骗了……看来<西部世界>铁了心要把主要秘密都放在大结局里揭晓,大家就再等一周吧. 尽管如此,本集还是说清了不少谜团:比如威廉和格蕾丝的真实身份, ...

  3. 公司管理系列--Facebook 如何化茧成蝶[转]

    拒绝传统,看 Facebook 如何以三大法宝化茧成蝶:人才吸引.工程师文化和项目开发流程   我将结合之前在Facebook的四年工作经验,介绍Facebook创新的管理方法以及整个工程文化形成的方 ...

  4. 架构妄想:AJAX + REST

    William Vambenepe的最新文章,AJAX + REST是最新的架构妄想,让我们回想起了一个具有15年历史的架构,它曾被寄期望对Web产生革命性的影响. 在该架构里,Web服务器将返回包含 ...

  5. 3ds Max制作妄想中的外星人形象

    来源:CG游 作者:FedericoScarbini 使用软件:3ds Max, Photoshop, ZBrush 简介 我认为每一个人都曾经在他的人生中的某些时刻妄想着关于外星人的事情;我猜这是很 ...

  6. 华为云BigData Pro解读: 鲲鹏云容器助力大数据破茧成蝶

    华为云鲲鹏云容器 见证BigData Pro蝶变之旅大数据之路顺应人类科技的进步而诞生,一直顺风顺水,不到20年时间,已渗透到社会生产和人们生活的方方面面,.然而,伴随着信息量的指数级增长,大数据也开 ...

  7. 蝶式套利(butterfly spread)

    多头蝶式套利.预期市场价格趋于稳定,希望在这个价格区间内能获利,可选用多头蝶式套利,以较低的议定价格买进一个看涨期权,又以较高的议定价格买进一个看涨期权,同时又以介于上述2个议定价格之间的中等的议定价 ...

  8. 化茧成蝶,开源NetWorkSocket通讯组件

    前言 前后历时三年,期间大量参考.Net Framework和Asp.net MVC源代码,写写删删再重构,组件如今更新到V1.5.x了.从原来的丑小鸭,变成今天拥有稳定和强大的tcp协议支持基础层, ...

  9. Effective C++ -----条款21:必须返回对象时,别妄想返回其reference

    绝不要返回pointer或reference指向一个local stack对象,或返回reference指向一个heap-allocated对象,或返回pointer或reference指向一个loc ...

随机推荐

  1. Spring MVC源码分析(二):SpringMVC的DispatcherServlet的设计与实现

    概述   DispatcherServlet是SpringMVC的一个前端控制器,是MVC架构中的C,即controller的实现,用于拦截这个web应用的所有请求,具体为在web.xml中配置这个s ...

  2. Springboot循环依赖

    背景 最近在使用Springboot做项目的时候,遇到了一个循环依赖的 问题.那什么是循环依赖呢,常见的一种情形就是在ServiceA中注入了ServiceB,在ServiceB中也注入了Servic ...

  3. 前端 css 进阶

    内容目录: 1.css盒子模型 2.浮动 float 3.溢出 overflow 4.定位 position 5. z-index 6.opacity 1.css盒子模型 margin:用来调节盒子与 ...

  4. 2018-9-30-dotnet-core-通过修改文件头的方式隐藏控制台窗口

    title author date CreateTime categories dotnet core 通过修改文件头的方式隐藏控制台窗口 lindexi 2018-09-30 18:36:43 +0 ...

  5. usleep - 睡眠若干微秒

    总览 (SYNOPSIS) usleep [number] 描述 (DESCRIPTION) usleep 睡眠 指定的 微秒数. 缺省值 是 1. 选项 (OPTIONS) --usage 显示 简 ...

  6. v-bind和v-model的区别

    1:v-bind动态绑定指令,默认情况下标签自带属性的值是固定的,在为了能够动态的给这些属性添加值,可以使用v-bind:你要动态变化的值="表达式" 2:v-bind用于绑定属性 ...

  7. ArrayList集合二

    集合的遍历 通过集合遍历,得到集合中每个元素,这是集合中最常见的操作.集合的遍历与数组的遍历很像,都是通过索引的方式,集合遍历方式如下 13 import java.util.ArrayList; 1 ...

  8. Oozie框架介绍

    Oozie框架: 1.Oozie英文翻译:驯象人 2.Oozie简介 一个基于工作流引擎的开源框架,由Cloudera公司贡献给Apache,提供对Hadoop Mapreduce.Pig Jobs的 ...

  9. 2019年12月12日英语学习-Will I Or Won't I ?For Since

    没办法,听不懂,记不住.就会一句.艹

  10. NX二次开发-调系统命令UF_load_library[UFUN调DLL]

    此函数可以调DLL,可以调宏,当然也可以调其他内部函数(知道哪个内部函数怎么用的前提下). #include <uf.h> void UFUN_API_Call_DLL(char* dll ...