poj1013.Counterfeit Dollar(枚举)
Counterfeit Dollar
Time Limit: 1 Sec Memory Limit: 64 MB Submit: 415 Solved: 237
Description
Input
Output
Sample Input
1
ABCD EFGH even
ABCI EFJK up
ABIJ EFGH even
Sample Output
K is the counterfeit coin and it is light.
HINT
一开始想的死复杂,后来同学跟我说只要assume一个字母为假 , 并分别assume它为正或负,枚举即可。
想想也是 ,才12个。orz
#include<stdio.h>
#include<string.h>
int T ;
bool a[] ;
char b[] , A ;
bool flag , blog; struct st
{
char l[] , r[] ;
char jud[] ;
}e[]; void solve (int k , int l , int r)
{
if (l == r ) {
if (strcmp (e[k].jud , "even") == ) {
return ;
}
}
else if (l > r) {
if (strcmp (e[k].jud , "up") == ) {
return ;
}
}
else if (l < r) {
if (strcmp (e[k].jud , "down") == ) {
return ;
}
}
blog = ;
} int main ()
{
// freopen ("a.txt" , "r" , stdin ) ;
scanf ("%d" , &T ) ;
while (T--) {
for (int i = ; i <= ; i++) {
scanf ("%s" , e[i].l) ;// puts (e[i].l) ;
scanf ("%s" , e[i].r) ;// puts (e[i].r) ;
scanf ("%s" , e[i].jud) ;// puts (e[i].jud) ;
}
flag = ;
for (int i = ; i < && !flag ; i++) {
for (int j = ; j < ; j++) {//假的比较轻
a[j] = ;
}
a[i] = ;
blog = ;
for (int k = ; k <= ; k++) {
int l = , r = ;
for (int s = ; e[k].l[s] != '\0' ; s ++ ) {
l += a[e[k].l[s] - 'A'] ;
}
for (int s = ; e[k].r[s] != '\0' ; s ++ ) {
r += a[e[k].r[s] - 'A'] ;
}
solve (k , l , r) ;
if (!blog)
break ;
}
if (blog) {
flag = ;
A = 'A' + i ;
strcpy (b , "light") ;
}
}
if (!flag)
for (int i = ; i < && !flag ; i++) {
for (int j = ; j < ; j++) {//假的比较重
a[j] = ;
}
a[i] = ;
blog = ;
for (int k = ; k <= ; k++) {
int l = , r = ;
for (int s = ; e[k].l[s] != '\0' ; s ++ ) {
l += a[e[k].l[s] - 'A'] ;
}
for (int s = ; e[k].r[s] != '\0' ; s ++ ) {
r += a[e[k].r[s] - 'A'] ;
}
solve (k , l , r) ;
if (!blog)
break ;
}
if (blog) {
flag = ;
A = 'A' + i ;
strcpy (b , "heavy" ) ;
}
}
printf ("%c is the counterfeit coin and it is %s.\n" , A , b ) ;
}
return ;
}
poj1013.Counterfeit Dollar(枚举)的更多相关文章
- POJ1013 Counterfeit Dollar
题目来源:http://poj.org/problem?id=1013 题目大意:有12枚硬币,其中有一枚假币.所有钱币的外表都一样,所有真币的重量都一样,假币的重量与真币不同,但我们不知道假币的重量 ...
- POJ 1013 Counterfeit Dollar
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 36206 Accepted: 11 ...
- Poj 1013 Counterfeit Dollar / OpenJudge 1013(2692) 假币问题
1.链接地址: http://poj.org/problem?id=1013 http://bailian.openjudge.cn/practice/2692 http://bailian.open ...
- POJ 1013:Counterfeit Dollar
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 42028 Accepted: 13 ...
- Counterfeit Dollar -----判断12枚钱币中的一个假币
Counterfeit Dollar Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u ...
- Counterfeit Dollar 分类: POJ 2015-06-12 15:28 19人阅读 评论(0) 收藏
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 41559 Accepted: 13 ...
- 【poj1013】 Counterfeit Dollar
http://poj.org/problem?id=1013 (题目链接) 题意 12个硬币中有1个是假的,给出3次称重结果,判断哪个硬币是假币,并且判断假币是比真币中还是比真币轻. Solution ...
- POJ 1013 Counterfeit Dollar 集合上的位运算
Description Sally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are t ...
- D - Counterfeit Dollar(第二季水)
Description Sally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are t ...
随机推荐
- 常用的user32API说明
整理了一下常用的user32API说明 还有软件Microsoft Spy++供大家下载 Spyv10.00.30319.rar using System; using System.Collect ...
- 记录我开始学习 Git的路程
工作半年多了,总觉得没学到什么东西,于是乎找了个Git学习一下,感觉还蛮厉害的样子.为此记录下我的路程 2015,11,26 更新 前面的路都挺艰难的,在官网下载msysgit网速几乎为0(心情千万只 ...
- NHibernate扫盲
NHibernate中Get和Load的区别 (1) get()采用立即加载方式,而load()采用延迟加载; get()方法执行的时候,会立即向数据库发出查询语句, 而load()方法返回的是一个代 ...
- [USACO2004][poj2373]Dividing the Path(DP+单调队列)
http://poj.org/problem?id=2373 题意:一条直线分割成N(<=25000)块田,有一群奶牛会在其固定区域吃草,每1把雨伞可以遮住向左右延伸各A到B的区域,一只奶牛吃草 ...
- [USACO2002][poj1945]Power Hungry Cows(启发式搜索)
Power Hungry CowsTime Limit: 1000MS Memory Limit: 30000K Total Submissions: 4570 Accepted: 1120 Desc ...
- 每天一个linux命令(12):head 命令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 1.命令格式: hea ...
- 北京大学信息科学技术学院计算机专业课程大纲选摘--JAVA
- 第四次个人作业——关于微软必应词典android客户端的案例分析
[前言] 第一次搞测评这种东西,如果有什么疏漏,请多多谅解.测评内容如题. 第一部分 调研,评测 评测:(设备:Lenovo A806) 软件的bug,功能评测,黑箱测试 bug等级划分方式 5级分类 ...
- 小菜鸟学Spring-读取属性文件值(三)
Example: the PropertyPlaceholderConfigurer 属性配置文件内容如下所示: jdbc.driverClassName=org.hsqldb.jdbcDriver ...
- 坑爹的BFC;块格式上下文
Formatting context(FC) Formatting context 是 W3C CSS2.1 规范中的一个概念.它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位 ...