模拟猜数(POJ2328)

题目链接:http://poj.org/problem?id=2328

解题报告:

缩短区间,soeasy,

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string.h>
#include <limits.h>

using namespace std;

int main()
{
    int n,begin = 0,end = INT_MAX;
    char str[10];
    while( cin >> n && n )
    {
        getchar();
        begin = 0,end = INT_MAX;
         while ( gets(str) && strcmp(str,"right on") )
         {
            if( strcmp(str,"too high") == 0 && n < end )
                end = n;
            else
                if( strcmp(str,"too low") == 0 && n > begin )
                    begin = n;
            cin >> n;
            getchar();
        }
        if( n > begin && n < end )
            printf("Stan may be honest
");
        else
            printf("Stan is dishonest
");
    }
    return 0;
}
原文地址:https://www.cnblogs.com/TreeDream/p/5487292.html