zoukankan      html  css  js  c++  java
  • ECNU 3186 A+B

    ECNU 3186 A+B

    链接

    https://acm.ecnu.edu.cn/problem/3186/

    题目

    单点时限: 2.0 sec

    内存限制: 256 MB

    读入两个小于100的非负整数A和B,计算A+B。

    需要注意的是:A和B的每一位数字由对应的英文单词给出。

    输入格式
    第1行:整数t(1 <= t <= 10 ) 为测试数据组数。

    第2~t+1行:每个问题输入一行,格式为:A + B =,相邻两字符串之间用一个空格间隔。

    输出格式
    对于每个问题,输出一行问题的编号( 开始编号,格式:case #0: 等),然后对应每个问题在一行中输出A+B的值。

    样例
    input
    3
    three four + five six =
    zero seven + eight nine =
    zero + zero =
    output
    case #0:
    90
    case #1:
    96
    case #2:
    0

    提示
    数字 0-9 的英文单词为:

    zero,one,two,three,four,five,six,seven,eight,nine

    思路

    字符串处理,这里用的String类,先用split分割一下字符串,存到sp数组里面,之后处理数字。
    用了一个数组专门存数字的英文,遍历时找到对比即可。由于最多两位,所以若为两位,第一位要乘10.
    发现加号,就转为处理数字2,等号不作处理,最后按格式输出即可。
    这里的小问题是,next不接受空格,要用nextline,并且用之前要把之前的换行符给消去,空用一次nextline。

    代码

      
      static String[] num = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight",
          "nine"};
    
      public static void fun() {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        String temp = sc.nextLine();
        for (int count = 0; count < n; count++) {
          String str = sc.nextLine();
          String[] sp = str.split(" ");
          int flag = 0;
          int add1 = 0, add2 = 0;
          for (int i = 0; i < sp.length; i++) {
            if (sp[i].equals("+")) {
              flag = 1;
              continue;
            }
            if (flag == 0) {
              for (int j = 0; j < 10; j++) {
                if (sp[i].equals(num[j])) {
                  add1 *= 10;
                  add1 += j;
                  break;
                }
              }
            } else {
              for (int j = 0; j < 10; j++) {
                if (sp[i].equals(num[j])) {
                  add2 *= 10;
                  add2 += j;
                  break;
                }
              }
            }
          }
          System.out.println("case #" + count + ":");
          System.out.println(add1 + add2);
        }
      }
    
  • 相关阅读:
    python unittest单元测试框架-3用例执行顺序、多级目录、装饰器、fixtures
    python unittest单元测试框架-2discover
    python unittest单元测试框架-1
    python selenium-4自动化测试模型
    python selenium-9 grid模式
    20)PHP,数组的遍历
    19)PHP,数组知识
    18)PHP,可变函数,匿名函数 变量的作用域
    17)PHP,函数基础和参数问题
    16)PHP, set_include_path
  • 原文地址:https://www.cnblogs.com/blogxjc/p/14273136.html
Copyright © 2011-2022 走看看