zoukankan      html  css  js  c++  java
  • CodeForces

    Time Limit: 1000MS   Memory Limit: 262144KB   64bit IO Format: %I64d & %I64u

     Status

    Description

    A TV show called "Guess a number!" is gathering popularity. The whole Berland, the old and the young, are watching the show.

    The rules are simple. The host thinks of an integer y and the participants guess it by asking questions to the host. There are four types of acceptable questions:

    • Is it true that y is strictly larger than number x?
    • Is it true that y is strictly smaller than number x?
    • Is it true that y is larger than or equal to number x?
    • Is it true that y is smaller than or equal to number x?

    On each question the host answers truthfully, "yes" or "no".

    Given the sequence of questions and answers, find any integer value of y that meets the criteria of all answers. If there isn't such value, print "Impossible".

    Input

    The first line of the input contains a single integer n (1 ≤ n ≤ 10000) — the number of questions (and answers). Next n lines each contain one question and one answer to it. The format of each line is like that: "sign x answer", where the sign is:

    • ">" (for the first type queries),
    • "<" (for the second type queries),
    • ">=" (for the third type queries),
    • "<=" (for the fourth type queries).

    All values of x are integer and meet the inequation  - 109 ≤ x ≤ 109. The answer is an English letter "Y" (for "yes") or "N" (for "no").

    Consequtive elements in lines are separated by a single space.

    Output

    Print any of such integers y, that the answers to all the queries are correct. The printed number y must meet the inequation  - 2·109 ≤ y ≤ 2·109. If there are many answers, print any of them. If such value doesn't exist, print word "Impossible" (without the quotes).

    Sample Input

    Input
    4
    >= 1 Y
    < 3 N
    <= -3 N
    > 55 N
    Output
    17
    Input
    2
    > 100 Y
    < -100 Y
    Output
    Impossible

    Source

    #include <iostream>  
    #include <stdio.h>  
    #include <stdlib.h>  
    #include<string.h>  
    #include<algorithm>  
    #include<math.h>  
    using namespace std;  
    int f[100005];  
      
    int main()  
    {  
        int n,min0=-1000001000,max0=1000010000;  
        cin>>n;  
        for(int i=0;i<n;i++)  
        {  
            char x[3],an;int num;  
            cin>>x>>num>>an;  
            if(an=='Y'&&x[0]=='>')  
            {  
                if(x[1]=='=')  
                min0=max(min0,num);  
                else min0=max(min0,num+1);  
            }  
            else if(an=='N'&&x[0]=='>')  
            {  
                if(x[1]=='=')  
                    max0=min(max0,num-1);  
                else max0=min(max0,num);  
            }  
            else if(an=='Y'&&x[0]=='<')  
            {  
                if(x[1]=='=')  
                max0=min(max0,num);  
                else max0=min(max0,num-1);  
            }  
            else if(an=='N'&&x[0]=='<')  
            {  
                if(x[1]=='=')  
                    min0=max(min0,num+1);  
                else min0=max(min0,num);  
            }  
           // cout<<max0<<' '<<min0<<endl;  
        }  
        if(max0>=min0)  
            cout<<min0<<endl;  
        else cout<<"Impossible"<<endl;  
        return 0;  
    }
  • 相关阅读:
    centos8 将SSSD配置为使用LDAP并要求TLS身份验证
    Centos8 搭建 kafka2.8 .net5 简单使用kafka
    .net core 3.1 ActionFilter 拦截器 偶然 OnActionExecuting 中HttpContext.Session.Id 为空字符串 的问题
    Springboot根据不同环境加载对应的配置
    VMware Workstation12 安装 Centos8.3
    .net core json配置文件小结
    springboot mybatisplus createtime和updatetime自动填充
    .net core autofac依赖注入简洁版
    .Net Core 使用 redis 存储 session
    .Net Core 接入 RocketMQ
  • 原文地址:https://www.cnblogs.com/Ritchie/p/5425152.html
Copyright © 2011-2022 走看看