zoukankan      html  css  js  c++  java
  • HDU 4256 翻译罗马数字

    参考自:https://www.cnblogs.com/ECJTUACM-873284962/p/6414173.html

    The Famous Clock

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 1399    Accepted Submission(s): 940


    Problem Description
      Mr. B, Mr. G and Mr. M are now in Warsaw, Poland, for the 2012’s ACM-ICPC World Finals Contest. They’ve decided to take a 5 hours training every day before the contest. Also, they plan to start training at 10:00 each day since the World Final Contest will do so. The scenery in Warsaw is so attractive that Mr. B would always like to take a walk outside for a while after breakfast. However, Mr. B have to go back before training starts, otherwise his teammates will be annoyed. Here is a problem: Mr. B does not have a watch. In order to know the exact time, he has bought a new watch in Warsaw, but all the numbers on that watch are represented in Roman Numerals. Mr. B cannot understand such kind of numbers. Can you translate for him?
     

     

    Input
      Each test case contains a single line indicating a Roman Numerals that to be translated. All the numbers can be found on clocks. That is, each number in the input represents an integer between 1 and 12. Roman Numerals are expressed by strings consisting of uppercase ‘I’, ‘V’ and ‘X’. See the sample input for further information.
     
    Output
      For each test case, display a single line containing a decimal number corresponding to the given Roman Numerals.
     
    Sample Input
    I
    II
    III
    IV
    V
    VI
    VII
    VIII
    IX
    X
    XI
    XII
    Sample Output
    Case 1: 1
    Case 2: 2
    Case 3: 3
    Case 4: 4
    Case 5: 5
    Case 6: 6
    Case 7: 7
    Case 8: 8
    Case 9: 9
    Case 10: 10
    Case 11: 11
    Case 12: 12
     
     解法:
    #include <bits/stdc++.h>
    using namespace std;
    int main(){
        char s[10];
        int ans,k=0;
        while(gets(s)){
            ans=0;
            int len=strlen(s);
            for(int i=0;i<len;i++){
                if(s[i]=='I')ans++;
                if(s[i]=='V')ans=5-ans;
                if(s[i]=='X')ans=10-ans;
                }
            printf("Case %d: %d
    ",++k,ans);
            }
        return 0;
    }
  • 相关阅读:
    drf之频率器拓展
    drf之分页器
    drf之异常处理
    drf之过滤与排序
    drf之频率
    drf之权限
    drf之认证
    drf之路由
    drf之视图家族
    性能优化
  • 原文地址:https://www.cnblogs.com/cruelty_angel/p/10358516.html
Copyright © 2011-2022 走看看