zoukankan      html  css  js  c++  java
  • uva 621 Secret Research

    Secret Research 

    At a certain laboratory results of secret research are thoroughly encrypted. A result of a single experiment is stored as an information of its completion:


    `positive result', `negative result', `experiment failed' or `experiment not completed'


    The encrypted result constitutes a string of digits S, which may take one of the following forms:

    
    $\bullet$
    positive result 		 S = 1 or S = 4 or S = 78 
    $\bullet$
    negative result 		 S = S35 
    $\bullet$
    experiment failed 		 S = 9S4 
    $\bullet$
    experiment not completed 		 S = 190S
    

    (A sample result S35 means that if we add digits 35 from the right hand side to a digit sequence then we shall get the digit sequence corresponding to a failed experiment)


    You are to write a program which decrypts given sequences of digits.

    Input 

    A integer n stating the number of encrypted results and then consecutive nlines, each containing a sequence of digits given as ASCII strings.

    Output 

    For each analysed sequence of digits the following lines should be sent to output (in separate lines):

    
    		 + 		  for a positive result
    		 - 		  for a negative result
    		 * 		  for a failed experiment
    		 ? 		  for a not completed experiment
    

    In case the analysed string does not determine the experiment result, a first match from the above list should be outputted.

    Sample Input 

    4
    78
    7835
    19078
    944
    

    Sample Output 

    +
    -
    ?
    *
    

    Miguel A. Revilla
    2000-01-10

    话说这道水题开始没看懂。。。。不多说,看代码就可以看懂

    拙劣的代码
     1 #include <iostream>
     2 #include <cstdlib>
     3 #include <cstdio>
     4 #include <cstring>
     5 
     6 using namespace std;
     7 
     8 int main(void)
     9 {
    10     char a[1000];
    11 
    12     while (cin >> a)
    13     {
    14         int len = strlen(a);
    15         if (!strcmp(a, "1") || !strcmp(a, "4") || !strcmp(a, "78"))
    16             cout << '+' << endl;
    17         else
    18         {
    19             if (a[len-1] == '5' && a[len-2] == '3') cout << '-' << endl;
    20             else if (a[len-1] == '4' & a[0] == '9') cout << '*' << endl;
    21             else if (a[0] == '1' && a[1] == '9' && a[2] == '0') cout <<'?'
    22             << endl;
    23         }
    24     }
    25 
    26     return 0;
    27 }
  • 相关阅读:
    rgba 和opacity的透明效果有什么不同
    定位 盒模型 浮动 css优先级 伪类伪元素选择器---未完成
    JS中Date对象getYear()方法和getFullYear()方法区别
    Javascript错误提示--SyntaxError: Illegal return statement
    JavaScript高级程序设计-第六章面向对象的程序设计(复习)
    为什么js加事件时不要写括号
    JS函数是如何执行的
    关于JS的总结
    我所知道的数据库6-DDL语言(续)
    我所知道的数据库5-DDL语言
  • 原文地址:https://www.cnblogs.com/liuxueyang/p/2759666.html
Copyright © 2011-2022 走看看