Educational Codeforces Round 113 (Rated for Div. 2)
多拿纸画画 ! ! !
题意
给出n个数字(数字为1或2), 1代表这第i个选手没有输过, 2代表这第i个选手至少赢一次
输出为n*n矩阵( i行j列) , +表示 i 赢了j, -表示 i 对j输了, =表示ij平局, X表示i=j
题解
1表示这个选手没输过, 那就全是=或+, 但是我们还要尽量保证别的是1的选手没输过, 即:
是1的选手统统默认是=
其实1有多少没什么关系, 如图,

对于2, 像这种, 可以让3vs4 4vs5 5vs3, 前者赢. 如3赢了2, (3,2)为+, (2,3)为- , 一对
占两格而对于样例22这种, 只有2个空格, 至少有1个2没有赢过, 对于样例2这种, 只有0个
空格更离谱了, 直接输出NO
AC代码
#include <string>
#include <iostream>// 不输 赢一次
#include <vector>
using namespace std; string a, s[60];
bool book[60][60]; int main()
{
int t;
cin >> t;
bool flag = 1,f;
while(t --)
{
vector<int> id;
int n;
cin >> n >> a; for(int i = 0; i < n; i ++)
{
s[i] = string(n, '=');
s[i][i] = 'X';
if(a[i] == '2') id.push_back(i);
} if(id.size() <= 2 && id.size() > 0)
{
puts("NO");
continue;
} for(int i = 0; i < id.size(); i ++)
{
if(i+1 == id.size())
s[id[i]][id[0]] = '+', s[id[0]][id[i]] = '-';
else
s[id[i]][id[i+1]] = '+', s[id[i+1]][id[i]] = '-';
}
puts("YES");
for(int i = 0; i < n;i ++)
cout << s[i] << endl; }
return 0;// 不输 赢一次
}
Educational Codeforces Round 113 (Rated for Div. 2)的更多相关文章
- Educational Codeforces Round 113 (Rated for Div. 2)题解
\(A,B,C\)顺利签到,还是在\(D\)上面卡住了,之后在睡前还是想出来了,看来还是自己的思维不够敏捷和成熟... D. Inconvenient Pairs 简化题意,在一个直角坐标系中,有一些 ...
- Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship
Problem Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship Time Limit: 2000 mSec P ...
- Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems(动态规划+矩阵快速幂)
Problem Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems Time Limit: 3000 mSec P ...
- Educational Codeforces Round 43 (Rated for Div. 2)
Educational Codeforces Round 43 (Rated for Div. 2) https://codeforces.com/contest/976 A #include< ...
- Educational Codeforces Round 35 (Rated for Div. 2)
Educational Codeforces Round 35 (Rated for Div. 2) https://codeforces.com/contest/911 A 模拟 #include& ...
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings 题目连接: http://cod ...
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes 题目连接: http://code ...
- Educational Codeforces Round 63 (Rated for Div. 2) 题解
Educational Codeforces Round 63 (Rated for Div. 2)题解 题目链接 A. Reverse a Substring 给出一个字符串,现在可以对这个字符串进 ...
- Educational Codeforces Round 39 (Rated for Div. 2) G
Educational Codeforces Round 39 (Rated for Div. 2) G 题意: 给一个序列\(a_i(1 <= a_i <= 10^{9}),2 < ...
随机推荐
- Mysqldump 命令只导出表结构或数据或数据和结构的方法
1.备份数据库 #mysqldump --opt -d 数据库名 -u root -p > xxx.sql #mysqldump DB_NAME >数据库备份名 #mysqldump -A ...
- 4月17日 python学习总结 反射、object内置方法、元类
一.反射 下述四个函数是专门用来操作类与对象属性的,如何操作? 通过字符串来操作类与对象的属性,这种操作称为反射 class People: country="China" def ...
- python域名200检测
import requests import threading import queue # qianxiao996精心制作 #博客地址:https://blog.csdn.net/qq_36374 ...
- BUAA_C++算法板子积累_动态规划、图算法、计算几何、FFT
Hello #include <iostream> #include <cstdio> #include <cctype> #include <cmath&g ...
- 论文翻译:2018_Source localization using deep neural networks in a shallow water environment
论文地址:https://asa.scitation.org/doi/abs/10.1121/1.5036725 深度神经网络在浅水环境中的源定位 摘要: 深度神经网络(DNNs)在表征复杂的非线性关 ...
- BGP的五种报文六种状态
BGP的五种报文 Open报文:用于协商BGP参数,包括版本号,AS号等信息.在两个路由器之间建立了TCP会话之后开始交换Open信息以确认是否能形成邻居关系,是TCP建立后发送的第一个信息,类似OS ...
- Dubbo 和 Spring Cloud 的区别?
根据微服务架构在各方面的要素,看看 Spring Cloud 和 Dubbo 都提供了哪些支 持. Dubbo Spring Cloud 服务注册中心 Zookeep er Spring Cloud ...
- 学习Tomcat(二)
一. Java简介 JDK: 面向开发人员使用的SDK,提供Java的开发环境和运行环境 SDK: 软件开发包,包括函数库.编译程序等 JRE: Java的运行环境,面向Java的使用者,不是开发者 ...
- MyBatis Plus 2.3 个人笔记-02-基本注解
实体类注解 /* * MybatisPlus会默认使用实体类的类名到数据中找对应的表. * */ @TableName("tbl_employee") public class E ...
- 基于融云的IM通讯
一.业务场景 项目的发展需要吧原来自己的写的通讯换为第三方的,多家对比后选择了融云IM通讯,项目要实现的功能这要是单聊.群聊.聊天室.发送的内容为文字.图片.文件.语音通话与视频通话.听起来挺复杂的我 ...