xth的第 12 枚硬币(codevs 1366)
题目描述 Description
传说 xth 曾经拥有11枚完全相同硬币(你懂得),不过今年呢,rabbit又送了他一
枚硬币。这枚硬币和其他硬币外观相同,只有重量不同,或轻或重。Xth 一不小心,
将这枚特殊的硬币和其他硬币混在了一起。Rabbit 知道后很生气,要他立刻把那枚
硬币找出来,并且还要说出这枚硬币是轻还是重。可怜的 Xth 只有一架普通托盘天
平,并且只能称量三次(每次称量,两边各四枚)。现在全部 12枚硬币编号为
A~L,现给出你三次称量的结果,请你帮 xth 找出那枚不一样的硬币。他一定会感
谢你们滴~~~
输入描述 Input Description
共三行,每行是由空格隔开的两个字符串,分别代表左右两盘的四个硬币,以及一
个单词。’even’表示两侧重量相等,’up’表示右侧轻,’down’表示右侧重。
输出描述 Output Description
一行,一个英文句子,指出那枚不一样的硬币以及它的轻重情况。
X is the counterfeit coin and it is light/heavy. (X表示硬币)
样例输入 Sample Input
ABCD EFGH even
ABCI EFJK up
ABIJ EFGH even
样例输出 Sample Output
K is the counterfeit coin and it
is light.
数据范围及提示 Data Size & Hint
数据保证有且仅有一枚特殊的硬币,无矛盾情况出现。
/*
找不对等次数最多的硬币
*/
#include<cstdio>
#include<iostream>
#define M 14
using namespace std;
int f[M],vis[M];
char s1[],s2[],s3[];
int main()
{
for(int T=;T<=;T++)
{
cin>>s1>>s2>>s3;
if(s3[]=='e')
{
for(int i=;i<=;i++)
{
f[s1[i]-'A'+]=f[s2[i]-'A'+]=;
vis[s1[i]-'A'+]=vis[s2[i]-'A'+]=;
}
}
else if(s3[]=='u')
{
for(int i=;i<=;i++)
{
if(f[s1[i]-'A'+]==)vis[s1[i]-'A'+]++;
if(!f[s1[i]-'A'+])f[s1[i]-'A'+]=,vis[s1[i]-'A'+]++;
if(f[s1[i]-'A'+]==)f[s1[i]-'A'+]=;
if(f[s2[i]-'A'+]==)vis[s2[i]-'A'+]++;
if(!f[s2[i]-'A'+])f[s2[i]-'A'+]=,vis[s2[i]-'A'+]++;
if(f[s2[i]-'A'+]==)f[s2[i]-'A'+]=;
}
}
else
{
for(int i=;i<=;i++)
{
if(f[s1[i]-'A'+]==)vis[s1[i]-'A'+]++;
if(!f[s1[i]-'A'+])f[s1[i]-'A'+]=,vis[s1[i]-'A'+]++;
if(f[s1[i]-'A'+]==)f[s1[i]-'A'+]=;
if(f[s2[i]-'A'+]==)vis[s2[i]-'A'+]++;
if(!f[s2[i]-'A'+])f[s2[i]-'A'+]=,vis[s2[i]-'A'+]++;
if(f[s2[i]-'A'+]==)f[s2[i]-'A'+]=;
}
}
}
int tot=,ans=;
for(int i=;i<=;i++)
if(vis[i]>tot)
{
tot=vis[i];
ans=i;
}
if(f[ans]==)printf("%c is the counterfeit coin and it is light.",ans+'A'-);
else printf("%c is the counterfeit coin and it is heavy.",ans+'A'-);
return ;
}
xth的第 12 枚硬币(codevs 1366)的更多相关文章
- 1366 xth 的第 12 枚硬币
1366 xth 的第 12 枚硬币 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 传说 xth 曾 ...
- Ex 6_19 至多用k枚硬币兑换价格_第七次作业
子问题定义: 定义一个二维数组b,其中b[i][j]表示用i个硬币是否能兑换价格j,表示第i个币种的面值, 递归关系: 初值设定: 求解顺序: 按下标从小到大依次求解数组b每一列的值,最后二维数组b的 ...
- n枚硬币问题(找假币)
问题描述: 在n枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重.可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测这枚假币. 解题思路: ...
- Java实现8枚硬币问题(减治法)
1 问题描述 在8枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重.可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测这枚假币. 2.1 减 ...
- Counterfeit Dollar -----判断12枚钱币中的一个假币
Counterfeit Dollar Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u ...
- POJ1013 称硬币
题目链接:http://poj.org/problem?id=1013 题目大意 有12枚硬币.其中有11枚真币和1枚假币.假币和真币重量不同,但不知道假币比真币轻还是重.现在,用一架天平称了这些币三 ...
- POJ1013称硬币【枚举】
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 52474 Accepted: 16 ...
- POJ 1013 Counterfeit Dollar
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 36206 Accepted: 11 ...
- C++基础算法学习——猜假币
有12枚硬币.其中有11枚真币和1枚假币.假币和真币重量不同,但不知道假币比真币轻还是重.现在,用一架天平称了这些币三次,告诉你称的结果,请你找出假币并且确定假币是轻是重(数据保证一定能找出来).例题 ...
随机推荐
- 一、Linux文件权限与目录配置
行文结构如下: 用户和用户组 Linux文件权限概念 Linux目录配置 重点回顾 1.用户与用户组 Linux是个多用户.多任务的系统,可能有多人同时使用这台机器进行工作,为了考虑每个人的隐私和工作 ...
- POJ3687Labeling Balls
Labeling Balls Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 14278 Accepted: 4162 D ...
- promise 小抄
catch的用法 我们知道Promise对象除了then方法,还有一个catch方法,它是做什么用的呢?其实它和then的第二个参数一样,用来指定reject的回调,用法是这样: getNumber( ...
- 51nod 1577 线性基
思路: http://blog.csdn.net/yxuanwkeith/article/details/53524757 //By SiriusRen #include <bits/stdc+ ...
- OI——不后悔的两年
NOI2014,悲惨的考跪,99+170+130 399 Cu滚粗.最终签到了复旦的一本,还算是有点结果吧.(其实我一开始就想读复旦我会说?)回首这两年,就像一场梦一样,从一无所知的小白到进入省队再到 ...
- 检查阿里云ssl证书到期情况
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019-06-10 16:00 # @Author : Anthony.long # ...
- Laravel (5.5.33) 加载过程(二)
本次说明代码 /* |-------------------------------------------------------------------------- | Turn On The ...
- 对“空引用”说bye-bye
大家可能经常遇到这种情况:当一个对象为null时,调用这个对象的方法或者属性时,就会报错:“Object reference not set to an instance of an object.” ...
- Html基础学习(基于W3school网络教程)
//防止乱码 head中加入 <meta http-equiv="Content-Type" content="text/html; charset=utf-8&q ...
- CSS——样式初始化
腾讯: body,ol,ul,h1,h2,h3,h4,h5,h6,p,th,td,dl,dd,form,fieldset,legend,input,textarea,select{margin:0;p ...