爆搜。

#include<cstdio>
#include<string.h>
#include<math.h>
#include<queue>
#include<algorithm>
using namespace std; int R[],C[];
int r[],c[];
int flag[];
int ans,f; bool check()
{
for(int i=;i<=;i++)
{
r[i]=R[i],c[i]=C[i];
if(flag[i]==) swap(r[i],c[i]);
} if(r[]+r[]+r[]==c[])
{
printf("%d\n",c[]);
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("A");
printf("\n");
}
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("B");
printf("\n");
}
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("C");
printf("\n");
}
return ;
} if(r[]==r[]&&c[]==c[]+c[]&&c[]==r[]+r[])
{
printf("%d\n",c[]); for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("A");
printf("\n");
}
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("B");
for(int j=;j<=c[];j++) printf("C");
printf("\n");
}
return ;
} if(r[]==r[]&&c[]==c[]+c[]&&c[]==r[]+r[])
{
printf("%d\n",c[]);
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("B");
printf("\n");
}
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("A");
for(int j=;j<=c[];j++) printf("C");
printf("\n");
}
return ;
} if(r[]==r[]&&c[]==c[]+c[]&&c[]==r[]+r[])
{
printf("%d\n",c[]); for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("C");
printf("\n");
}
for(int i=;i<=r[];i++) {
for(int j=;j<=c[];j++) printf("A");
for(int j=;j<=c[];j++) printf("B");
printf("\n");
}
return ;
}
return ;
} void dfs(int now)
{
if(now==)
{
if(f==) return;
if(check()==) f=;
return ;
}
flag[now]=; dfs(now+);
flag[now]=; dfs(now+);
} int main()
{
for(int i=;i<=;i++) scanf("%d%d",&R[i],&C[i]);
f=;
dfs();
if(f==) printf("-1\n");
return ;
}

CodeForces 581D Three Logos的更多相关文章

  1. 「CodeForces 581D」Three Logos

    BUPT 2017 Summer Training (for 16) #3A 题意 给你三个矩形,需要不重叠不留空地组成一个正方形.不存在输出-1,否则输出边长和这个正方形(A,B,C表示三个不同矩形 ...

  2. Round #322 (Div. 2) 581D Three Logos (模拟)

    先枚举两个矩形,每个矩形横着放或竖着放,把一边拼起来, 如果不是拼起来有缺口就尝试用第三个矩形去补. 如果没有缺口就横着竖着枚举一下第三个矩形和合并的矩形x或y拼接. #include<bits ...

  3. codeforces581D

    Three Logos CodeForces - 581D Three companies decided to order a billboard with pictures of their lo ...

  4. Codeforces Round #322 (Div. 2) D. Three Logos 暴力

    D. Three Logos Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/581/problem ...

  5. Codeforces Round #322 (Div. 2) D. Three Logos 模拟

                                                      D. Three Logos Three companies decided to order a ...

  6. python爬虫学习(5) —— 扒一下codeforces题面

    上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...

  7. 【Codeforces 738D】Sea Battle(贪心)

    http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...

  8. 【Codeforces 738C】Road to Cinema

    http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...

  9. 【Codeforces 738A】Interview with Oleg

    http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...

随机推荐

  1. c++面试题【转】

    语言部分: 虚函数,多态.这个概念几乎是必问. STL的使用和背后数据结构,vector string map set 和hash_map,hash_set 实现一个栈类,类似STL中的栈.这个题目初 ...

  2. JSP基本语法--Page指令 <%@page 属性=”内容“%>

    page指令语法:<%@page 属性=”内容“%> 常用:contentType,import,pageEncoding 例子,设置MIME属性,如果使用一些高版本的tomcat,可能自 ...

  3. MSSQL 字符串XML 合成列

    declare @str varchar(2000) set @str='1,2,3,4,6,8,5,9,10,11,12,13,14,15,16,17,18,19,20,29,30,31,32,33 ...

  4. iabtis初探

    1.简介 与Hibernate相比,ibatis属于一种半自动的ORM框架,主要解决了java对象与SQL入参及结果集的映射关系.简单易学.容易上手:但是安全性较差,对于金融等对安全要求较高的系统来说 ...

  5. java实现类似qq的窗口对聊

    Swing实现界面,socket实现通信 package com.learn.talk; import java.awt.BorderLayout; import java.awt.Dimension ...

  6. TcpClient 读写流

    TcpClient 读写流 TcpClient tcp = new TcpClient(); tcp.Connect(IPAddress.Parse("192.168.1.161" ...

  7. 使用Github搭建个人博客网站

    1 新建一个repo,创建一个没有父节点的分支gh-pages(github规定,只有该分支中的页面,才会生成网页文件): mkdir jekyll_demo cd jekyll_demo git i ...

  8. 转:设置Loadrunner负载机临时文件目录

    最近在跑稳定性测试 3 X 24小时的时候,发现负载机产生的日志还运行记录等等竟然有100多G! C盘空间不足,但是D盘还有700多G空间呢,怎么让临时文件转移到D盘? 此处分两种情况: 一. 修改本 ...

  9. hdu_2544_最短路(spfa版子)

    题目连接:hdu_2544_最短路 存个自己写的SPFA的板子 #include<cstdio> #include<cstring> #define mst(a,b) mems ...

  10. Android Studio的使用(十三)--设置方法分割线

    1.只需要在设置中选中show method separators 即可.