Codeforces Round #234 (Div. 2) :A. Inna and Choose Options
1 second
256 megabytes
standard input
standard output
There always is something to choose from! And now, instead of "Noughts and Crosses", Inna choose a very unusual upgrade of this game. The rules of the game are given below:
There is one person playing the game. Before the beginning of the game he puts 12 cards in a row on the table. Each card contains a character: "X" or "O".
Then the player chooses two positive integers a and
b (a·b = 12), after that he makes a table of size
a × b from the cards he put on the table as follows: the first
b cards form the first row of the table, the second
b cards form the second row of the table and so on, the last
b cards form the last (number
a) row of the table. The player wins if some column of the table contain characters "X" on all cards. Otherwise, the player loses.
Inna has already put 12 cards on the table in a row. But unfortunately, she doesn't know what numbers
a and b to choose. Help her win the game: print to her all the possible ways of numbers
a, b that she can choose and win.
The first line of the input contains integer
t (1 ≤ t ≤ 100). This value shows the number of sets of test data in the input. Next follows the description of each of the
t tests on a separate line.
The description of each test is a string consisting of 12 characters, each character is either "X", or "O". The
i-th character of the string shows the character that is written on the
i-th card from the start.
For each test, print the answer to the test on a single line. The first number in the line must represent the number of distinct ways to choose the pair
a, b. Next, print on this line the pairs in the format
axb. Print the pairs in the order of increasing first parameter (a). Separate the pairs in the line by
whitespaces.
4
OXXXOXOOXOOX
OXOXOXOXOXOX
XXXXXXXXXXXX
OOOOOOOOOOOO
3 1x12 2x6 4x3
4 1x12 2x6 3x4 6x2
6 1x12 2x6 3x4 4x3 6x2 12x1
0
给仅仅含‘X'和’O'字符的长度为12的字符串,将它写入矩阵a*b(a*b=12)中。问存在某一列全为‘X'的矩阵的个数。
用的万能的打表。
。
23333
#include<cstdio>
#include<iostream>
#include<cstring>
#include<queue>
#include<algorithm>
#include<vector> using namespace std; const int N = 20;
int n ;
char s[N];
char str[N][N];
int flag;
int ans; int tt(int a, int b)
{
int i, j;
for(i=0; i<a; i++)
for(j=0; j<b; j++)
{
str[i][j] = s[ i*b+j ];
}
for(i=0; i<b; i++)
{
for(j=0; j<a; j++)
{
if( str[j][i]!='X' )
break;
}
if(j==a)
return 1;
} return 0;
} int main()
{
scanf("%d", &n);
while( n-- )
{
ans = 0;
scanf("%s", &s);
if( tt(1, 12) )
ans++;
if( tt(2, 6) )
ans++;
if( tt(3, 4) )
ans++;
if( tt(4, 3) )
ans++;
if( tt(6, 2) )
ans++;
if( tt(12, 1) )
ans++; printf("%d", ans); if( tt(1, 12) )
printf(" 1x12");
if( tt(2, 6) )
printf(" 2x6");
if( tt(3, 4) )
printf(" 3x4");
if( tt(4, 3) )
printf(" 4x3");
if( tt(6, 2) )
printf(" 6x2");
if( tt(12, 1) )
printf(" 12x1"); printf("\n");
} return 0;
}
Codeforces Round #234 (Div. 2) :A. Inna and Choose Options的更多相关文章
- Codeforces Round #234 (Div. 2):B. Inna and New Matrix of Candies
B. Inna and New Matrix of Candies time limit per test 1 second memory limit per test 256 megabytes i ...
- Codeforces Round #234 (Div. 2) A. Inna and Choose Options
A. Inna and Choose Options time limit per test 1 second memory limit per test 256 megabytes input st ...
- Codeforces Round #234 (Div. 2) A. Inna and Choose Options 模拟题
A. Inna and Choose Options time limit per test 1 second memory limit per test 256 megabytes input st ...
- Codeforces Round #234 (Div. 2)
A. Inna and Choose Options time limit per test 1 second memory limit per test 256 megabytes input st ...
- Codeforces Round #234 (Div. 2) B. Inna and New Matrix of Candies
B. Inna and New Matrix of Candies time limit per test 1 second memory limit per test 256 megabytes i ...
- Codeforces Round #234 (Div. 2) B. Inna and New Matrix of Candies SET的妙用
B. Inna and New Matrix of Candies time limit per test 1 second memory limit per test 256 megabytes i ...
- Codeforces Round #482 (Div. 2) : Kuro and GCD and XOR and SUM (寻找最大异或值)
题目链接:http://codeforces.com/contest/979/problem/D 参考大神博客:https://www.cnblogs.com/kickit/p/9046953.htm ...
- Codeforces Round #482 (Div. 2) :B - Treasure Hunt
题目链接:http://codeforces.com/contest/979/problem/B 解题心得: 这个题题意就是三个人玩游戏,每个人都有一个相同长度的字符串,一共有n轮游戏,每一轮三个人必 ...
- Codeforces Round #532 (Div. 2):F. Ivan and Burgers(贪心+异或基)
F. Ivan and Burgers 题目链接:https://codeforces.com/contest/1100/problem/F 题意: 给出n个数,然后有多个询问,每次回答询问所给出的区 ...
随机推荐
- WordPress主题开发实例:get_term_by()获取指定分类链接
根据名称获取链接 <?php //根据名称获取对应的id $term=get_term_by('name','新闻动态','category'); $term_id=$term->term ...
- WordPress主题开发:更换后台编辑器
这里我更换为KindEditor 1.下载插件 https://wordpress.org/plugins/kindeditor-for-wordpress/ 2.解压至wordpress目录下的/w ...
- Base64 JAVA后台编码与JS前台解码(解决中文乱码问题)
中文通过Java后台进行Base64编码后传到前台,通过JS进行Base64解码时会出现中文乱码的问题,被这个问题也是困扰了几天,使用jquery.base64.js只能转码非中文字符,经过搜集各种方 ...
- Java中的Future模式原理自定义实现
摘要:Future模式类似于js中的ajax等,是一个异步获取数据的机制,这里我把自己的一些形象理解通过代码实现了一下.该机制可以形象的理解为:调用获取数据的方法,首先获得一个没有装数据的空箱子(这个 ...
- [转]在ubuntu linux下以编译方式安装LAMP(apache mysql php)环境
FROM : http://www.cnblogs.com/eleganthqy/archive/2010/02/28/1675217.html 最近转向到了使用ubuntu做桌面,安装好系统以来一直 ...
- window.name实现的跨域数据传输 JavaScript跨域总结与解决办法
原文地址: http://www.cnblogs.com/rainman/archive/2011/02/20/1959325.html#m4 什么是跨域 1.document.domain+ifr ...
- maven清理.lastUpdated文件maven清理下载失败的jar,方便重新下载
因网络或其他的原因,maven下载jar等文件失败后,会在目录中存在 *.jar.lastUpdated ,如:xmlpull-1.1.3.1.jar.lastUpdated,此时,代码编译时会一直 ...
- 【UOJ Round #1】
枚举/DP+排列组合 缩进优化 QAQ我当时一直在想:$min\{ \sum_{i=1}^n (\lfloor\frac{a[i]}{x}\rfloor + a[i] \ mod\ x) \}$ 然而 ...
- DNS使用的是TCP协议还是UDP协议(转)
原文链接:DNS使用的是TCP协议还是UDP协议 DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP栈也算是个另类.但很少有人知道DNS分别在什么情 ...
- SharePoint2013 以其他用户登录和修改AD域用户密码 功能
sharepoint默认是没有修改AD密码 和切换 用户的功能,这里我用future的方式来实现. 部署wsp前: 部署后: 点击以其他用户身份登录 点击修改用户密码: 这里的扩展才菜单我们用Cust ...