• Ballot evaluation


    http://acm.hdu.edu.cn/showproblem.php?pid=2986

    题意很简单,主要是要处理精度,最手残的是把单词拼写错了。。。

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <algorithm>
     4 #include <stdlib.h>
     5 #include <iostream>
     6 #include <map>
     7 using namespace std;
     8 const double eps=1e-8;
     9 int main()
    10 {
    11     int n,m;
    12     while(~scanf("%d%d",&n,&m)){
    13         map<string,double>p;
    14         p.clear();
    15         string str;
    16         double x;
    17         for (int i = 1; i <= n; i++){
    18             cin>>str;
    19             cin>>x;
    20             int tt = int(x*10+eps);
    21             p[str] = tt;
    22         }
    23         int o = 0;
    24         while(m--){
    25             o++;
    26             int ans = 0;
    27             while(1){
    28                 cin>>str;
    29                 if(str==">"||str=="<"||str==">="||str=="<="||str=="=")
    30                     break;
    31                 ans+=p[str];
    32             }
    33             int k;
    34             cin>>k;
    35             k *=10;
    36             int flag1 = 0,flag2 = 0,flag3 = 0,flag4 = 0,flag5 = 0;
    37             if(str==">"){
    38                 if(ans>k)
    39                     flag1 = 1;
    40             }
    41             else if (str=="<"){
    42                 if (ans<k)
    43                     flag2 = 1;
    44             }
    45             else if (str==">="){
    46                 if (ans>=k)
    47                     flag3 = 1;
    48             }
    49             else if (str=="<="){
    50                 if (ans<=k)
    51                     flag4 = 1;
    52             }
    53             else if (str=="="){
    54                 if (ans==k)
    55                     flag5 = 1;
    56             }
    57             if(flag1||flag2||flag3||flag4||flag5)
    58                 printf("Guess #%d was correct.
    ",o);
    59             else
    60                 printf("Guess #%d was incorrect.
    ",o);
    61         }
    62     }
    63     return 0;
    64 }
    View Code
  • 相关阅读:
    uva-10160-枚举
    zk-systemd
    c++官方文档-枚举-联合体-结构体-typedef-using
    c++官方文档-动态内存
    c++官方文档-指针
    c++官方文档-命名空间
    c++官方文档-模版函数和重载
    c++官方文档-按值传递和按引用传递
    c++官方文档
    HDU 1068
  • 原文地址:https://www.cnblogs.com/lahblogs/p/3633338.html
Copyright © 2020-2023  润新知