题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6400

这题有坑。。

hw的最小值小于等于4是一种情况,否则是另外一种情况。

第一种情况可以

((((((((

))))((((

(((())))

))))))))

第二种情况时第一行全为(,最后一行/列全为),中间则是"()()()()"和"(()()())"交替排列。。。。

证明过程好奇妙

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;inline int read()
{int x=0,t=1;char ch=getchar();while((ch<'0'||ch>'9')&&ch!='-')ch=getchar();if(ch=='-')t=-1,ch=getchar();while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar();return x*t;
}int main() {int kase = read();while(kase --) {int n = read(), m = read();if((n & 1) && (m & 1)) {for(int i = 1; i <= n; i ++) {for(int j = 1; j <= m; j ++)printf("(");puts("");}} else if((n & 1) && (! (m & 1))) {for(int i = 1; i <= n; i ++) {for(int j = 1; j <= (m / 2); j ++)printf("(");for(int j = 1; j <= (m / 2); j ++)printf(")");puts("");}} else if((!(n & 1)) && (m & 1)) {for(int i = 1; i <= n; i ++) {if(i <=n/2){for(int j = 1; j <= m; j ++)printf("(");}elsefor(int j = 1; j <= m; j ++)printf(")");puts("");}} else if((!(n & 1)) && (! (m & 1))) {if(min(n,m)<=4){if(n<=m){for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(i==1)printf("(");else if(i==n)printf(")");else if(i&1){if(j<=m/2)printf("(");elseprintf(")");}else{if(j<=m/2)printf(")");elseprintf("(");}}puts("");}}else{for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(j==1)printf("(");else if(j==m)printf(")");else if(j&1){if(i<=n/2)printf(")");elseprintf("(");}else{if(i<=n/2)printf("(");elseprintf(")");}}puts("");}}}else{if(n <= m) {for(int i = 1; i <= n; i ++) {if(i==1){for(int j=1;j<=m;j++)printf("(");}else if(i==n){for(int j=1;j<=m;j++)printf(")");}else if(i&1){for(int j=1;j<=m;j++)if(j==1)printf("(");else if(j==m)printf(")");else if(j&1)printf(")");elseprintf("(");}else{for(int j=1;j<=m;j++)if(j&1)printf("(");elseprintf(")");}puts("");}} else {for(int i = 1; i <= n; i ++) {for(int j=1;j<=m;j++){if(j==1)printf("(");else if(j==m)printf(")");else if(j&1){if(i&1)printf("(");elseprintf(")");}else{if(i==1)printf("(");else if(i==n)printf(")");else if(i&1)printf(")");elseprintf("(");}}puts("");}}}}}return 0;
}

hdu 6400 Parentheses Matrix思维相关推荐

  1. hdu 6400 Parentheses Matrix

    题目:点击打开链接 题意: 给一个只含'('和')'的矩阵,只考虑从行和列上的括号序列,构造一个矩阵使得合法括号序列的总数最多. 分析:构造,分类讨论.首先奇数行或奇数列内是不存在合法括号序列的,所以 ...

  2. HDU 6400 Parentheses Matrix(构造)

    题意:给你r,c求一个矩阵让它的行和列的匹配度最大,匹配就要一行一列全都匹配 每个位置只能是左括号或者右括号, "()"这算一个匹配,那么"(())",&quo ...

  3. HDU 多校 6400 Parentheses Matrix(构造)

    HDU 多校 6400 Parentheses Matrix(构造) // Problem: D. Parentheses Matrix // Contest: Codeforces - 2018 C ...

  4. HDU 5015——233 Matrix

    题目:HDU 5015 233 Matrix 题目大意:给出矩阵的第0行(233,2333,23333,-)和第0列a1,a2,- an(n<=10,m<=10^9),给出式子: A[i] ...

  5. HDU - 6486 Flower(思维)

    HDU - 6486 Flower 题目大意:有n堆草每次只能对n-1堆操作每次只能减1问最少操作几次能把这些草剪到相同高度如果不能输出-1 我们让n-1个数减1实际上可以看成使得剩下的那一个数加1. ...

  6. HDU - 5637 Transform (思维、bfs预处理)

    HDU - 5637 题目大意: 给出n个数的序列a,对于一个整数x,有两种操作: 1.改变x二进制中任一位 2.将x变为x^a[i] m次查询,每次查询输入两个整数x和y,问x最少经过多少次操作可以 ...

  7. HDU - 6438(贪心+思维)

    链接:HDU - 6438 题意:给出 n ,表示 n 天.给出 n 个数,a[i] 表示第 i 天,物品的价格是多少.每天可以选择买一个物品,或者卖一个已有物品,也可以什么都不做,问最后最大能赚多少 ...

  8. CF 1475 F . Unusual Matrix 思维

    传送门 大体题意:给定两个矩阵a和b,给定一个操作,这个操作可以将a矩阵任意一行或者任意一列取反,问能否将a变成b. 乍一看不是一个很难的题,但是想我这样思维不好的还是看不出来什么东西.让后看到了题解 ...

  9. Hdu 5339 Untitled (数学思维)

    题意:给一个数a和n个数b1,b2,...,bn. 从n个数中选择一些数重新排列成c1,c2,...,cm使得a%c1%c2%...%cm=0. 如果能选出则输出最少需要几个数,否则输出-1. 分析: ...

最新文章

  1. Android resource linking failed
  2. java如何获得点的横纵坐标_横纵坐标怎么区分
  3. mac设置linux环境,如何在mac或者linux配置oh-my-zsh
  4. java 序列化概念和作用_结合代码详细解读Java序列化与反序列化概念理解
  5. 到国外使用wifi悠着点防止天价帐单
  6. python学习高级篇(part7)--特殊属性和特殊方法
  7. 《Python Cookbook 3rd》笔记(4.16):迭代器代替 while 无限循环
  8. 怎么让手机变成震动器_手机厂商都在说的线性马达,到底是个什么东西?
  9. docker-compose的一些理解
  10. 数据库日志文件(databasename_log.ldf)太大 如何清除
  11. 迟滞比较器及施密特触发器详解
  12. Android Socket通信
  13. SketchUp2019下载SketchUp2019下载安装详细教程SU2019草图大师
  14. html页面布局主要有哪些形式,HTML页面布局形式与原则
  15. python pip是什么的简写,python pip是什么
  16. python切换环境_python如何变换环境
  17. word只能以安全模式打开
  18. 【好用的办公软件】万彩办公大师教程丨标准安装版/绿色免安装版/离线版区别
  19. Oracle SQL性能优化 SQL优化
  20. 用python写vip电影进行地址解析

热门文章

  1. GitHub开源游戏框架和引擎介绍
  2. (不ROOT/不安装软件/安全)--Android/安卓手机手动冻结/禁用系统应用方法
  3. 最新3D人脸技术综述
  4. C语言16x16点阵显示汉字程序,单片机+16x16点阵,汉字滚动显示程序(带仿真)
  5. 彻底丢掉职场中的四个幻想
  6. WMS-商超分拣管理
  7. CentOS7.5LNMP-PHP部署
  8. 目标检测算法回顾之应用场景篇
  9. 牛人如何利用《老友记》Friends学英语
  10. Laya 笔记-LayaAir基础篇