模拟,找次品硬币,Counterfeit Dollar(POJ 1013)
题目链接:http://poj.org/problem?id=1013
解题报告:
1、由于次品的重量不清楚,用time['L'+1]来记录各个字母被怀疑的次数。为负数则轻,为正数则重。
2、用zero['L'+1]记录当天平结果是even时,硬币绝对是真,true;
#include <iostream>
#include <cmath> using namespace std; int main()
{
int t;
cin>>t;
while(t--)
{
char left[][],right[][],result[][]; int time['L'+]= {}; ///标记各个字母被怀疑的次数;
bool zero['L'+]= {false}; ///标记字母绝对是真币; for(int k=; k<; k++)
cin>>left[k]>>right[k]>>result[k]; for(int i=; i<; i++) ///3次判断
{
///检查天平状态
switch(result[i][])
{
case 'e':///天平平衡
{
for(int j=; left[i][j]!='\0'; j++)
{
zero[left[i][j]]=true; zero[right[i][j]]=true;
}
break;
}
case 'u':///天平右边轻些
{
for(int j=; left[i][j]!='\0'; j++)
{
time[left[i][j]]++; time[right[i][j]]--;
}
break;
}
case 'd':///天平右边重些
{
for(int j=; left[i][j]!='\0'; j++)
{
time[left[i][j]]--; time[right[i][j]]++;
}
break;
}
}
} int Max=-;///查找被怀疑程度最高的硬币
char alpha;
for(int j='A';j<='L';j++)
{
if(zero[j])
continue; if(Max<=abs(time[j]))
{
Max=abs(time[j]);
alpha=j;
}
}
cout<<alpha<<" is the counterfeit coin and it is ";
if(time[alpha]>)
cout<<"heavy.\n";
else cout<<"light.\n";
}
return ;
}
模拟,找次品硬币,Counterfeit Dollar(POJ 1013)的更多相关文章
- 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: 36206 Accepted: 11 ...
- POJ 1013:Counterfeit Dollar
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 42028 Accepted: 13 ...
- POJ 1013 小水题 暴力模拟
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 35774 Accepted: 11 ...
- 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枚硬币,其中有一枚假币.所有钱币的外表都一样,所有真币的重量都一样,假币的重量与真币不同,但我们不知道假币的重量 ...
- Counterfeit Dollar -----判断12枚钱币中的一个假币
Counterfeit Dollar Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u ...
- poj1013.Counterfeit Dollar(枚举)
Counterfeit Dollar Time Limit: 1 Sec Memory Limit: 64 MB Submit: 415 Solved: 237 Description Sally ...
- 思维+模拟--POJ 1013 Counterfeit Dollar
Sally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are true silver d ...
随机推荐
- CSAPP阅读笔记-32位64位的区别--来自第三章引言的笔记--P110
仅从寻址上看,32位和64位机器能寻址的内存空间大小不同. 需要知道的是,计算机系统对存储器作了抽象,程序“认为”内存是一个很大的字节数组,然而实际上它是由多个硬件存储器和操作系统组合起来实现的. 程 ...
- linux运维基础知识
linux运维基础知识大全 一,序言 每一个微不足道的知识,也是未来的铺垫.每一份工作的薪资职位,也是曾经努力的结果. 二,服务器 1,运维人员工作职责: 1)保证数据不丢失:2)保证服务器24小时运 ...
- 使用Redis 配置替换fastjson 反序列化报错 com.alibaba.fastjson.JSONException: autoType is not support
新建的GenericFastJson2JsonRedisSerializer里面添加白名 添加: static { ParserConfig.getGlobalInstance().ad ...
- mac安装monkey工具
一.monkey测试简介: monkey工具是Android自动化测试工具的一种,主要对Android,APP可进行压力测试.(总结) Monkey是Android中的一个命令行工具,可以运行在模拟器 ...
- 牛客网Java刷题知识点之内存溢出和内存泄漏的概念、区别、内存泄露产生原因、内存溢出产生原因、内存泄露解决方案、内存溢出解决方案
不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号: 大数据躺过的坑 Java从入门到架构师 人工智能躺过的坑 ...
- underscore javascript工具库支持seajs模块化
underscore是一个很有用的js工具库,但是好像默认不支持seajs模块化 新建一个文件例如叫做xx.js 谈后,键入 define(function(require,exports,modul ...
- Java集合篇五:HashMap
1.HasMap 自定义基础版 package com.test.collection; /** * 自定义实现Map功能 * map :存放键值对,根据键对象找对应的值对象 * @author ch ...
- oracle学习篇十二:索引
索引: 查询User_indexes可以获取有关用户已创建的索引的详细信息. 查询User_ind_partitions可以获取有关用户已创建的分区索引的详细信息. 查询User_ind_column ...
- 集合之Iterator迭代器
Iterator迭代器概述: java中提供了很多个集合,它们在存储元素时,采用的存储方式不同.我们要取出这些集合中的元素,可通过一种通用的获取方式来完成. Collection集合元素的通用获取 ...
- csharp:汉字转带拼音声调
{ ...