设为首页 加入收藏

TOP

POJ 水题若干
2014-11-23 17:34:22 来源: 作者: 【 】 浏览:11
Tags:POJ 水题 若干

POJ 1013 Counterfeit Dollar


题意:有一打硬币,其中有一个是假币,质量可能较轻,也可能较重。通过三次称重将假币找出。

由于计算机很难模仿人的想法来实现问题。这道题我纠结了很久。

最后我是通过一一枚举的笨方法做的。就是从A硬币开始到L硬币结束,一一假设其为假币,其中又分为轻和重。当符合三次称重之后便找到了假币。


后来看网上有人是将三次称重这样实现的:给这十二枚硬币赋初值。如果是even,那么硬币值不变。如果是up,那么左边的自加,右边的自减。由于对于不确定的硬币还要做下一次测试。所以通过三次测试之后,偏离初值最大的必然为假币

#include
#include
#include
#include
using namespace std;
int main ()
{
    int n,i,j,k;
    cin>>n;
    while(n--)
    {
        char al[3][20],ar[3][20],a[3][10];
        int v[15]= {0},visit[15]= {0};
        bool flag=true;
        for (i=0; i<3; i++)
            cin>>al[i]>>ar[i]>>a[i];
        for (i=0; i<24; i++)
        {
            flag=true;
            v[i/2]=(i%2==0 -1:1);
            for (k=0; k<3; k++)
            {
                int left=0,right=0;
                for (j=0; jright)) flag=false;
                if (strcmp(a[k],"down")==0 && !(left 
 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇ZOJ 3630 Information 强连通 下一篇hdu 4081 Qin Shi Huang's Na..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·请问c语言刚入门,该 (2025-12-26 10:21:04)
·python 编程怎么定义 (2025-12-26 10:21:01)
·09-指 针 (一)-c语言 (2025-12-26 10:20:58)
·About - Redis (2025-12-26 08:20:56)
·Redis: A Comprehens (2025-12-26 08:20:53)