百练 2743 字符串判等 解题呈报

    添加时间:2013-6-4 点击量:

    链接:http://poj.grids.cn/practice/2743/


    题目:


    总时候限制:
    1000ms
    内存限制:
    65536kB
    描述
    断定两个由大小写字母和空格构成的字符串在忽视大小写和紧缩掉空格后是否相等
    输入
    第1行是测试数据的组数n,每组测试数据占2行,第1行是第一个字符串s1,第2行是第二个字符串s2。
    每组测试数据之间有一个空行,每行数据不跨越100个字符(重视字符串的长度可能为0)
    输出
    n行,相等则输出YES,不然输出NO
    样例输入

    3
    



    a A bb BB ccc CCC
    Aa BBbb CCCccc

    a dfadf fasdf
    adasddfsfsaf

    样例输出

    YES
    
    YES
    NO


    代码:



     1 #include <iostream>
    
    2 #include <cstdio>
    3 #include <cstdlib>
    4 #include <cstring>
    5 using namespace std;
    6 int main()
    7 {
    8 //freopen(F:\\input.txt,r,stdin);
    9
    10 int n;
    11 cin>>n;
    12 //cin.get();
    13
    14 char s1[200],s2[200],s3[200],s4[200];
    15 while(n--
    16 {
    17 gets(s1);
    18 gets(s1);
    19 gets(s2);
    20
    21 int len1 = strlen(s1);
    22 int len2 = strlen(s2);
    23
    24 int idx1 = 0;
    25 forint i = 0; i < len1; i++
    26 {
    27 if(s1[i] !=
    28 {
    29 if(s1[i] >= A && s1[i] <= Z) s3[idx1++] = (s1[i]-A) + a;
    30 else s3[idx1++] = s1[i];
    31 }
    32 }
    33 s3[idx1] = \0;
    34
    35 idx1 = 0;
    36 forint i = 0; i < len2; i++
    37 {
    38 if(s2[i] !=
    39 {
    40 if(s2[i] >= A && s2[i] <= Z) s4[idx1++] = (s2[i] - A) + a;
    41 else s4[idx1++] = s2[i];
    42 }
    43 }
    44 s4[idx1] = \0;
    45
    46 //cout<<s3:<<s3<<,s4:<<s4<<endl;
    47 if(strcmp(s3,s4)) cout<<NO<<endl;
    48 else cout<<YES<<endl;
    49 }
    50 return 0;
    51 }


    思路:


    1.重视测试实例间有空行

    原来,再大的房子,再大的床,没有相爱的人陪伴,都只是冰冷的物质。而如果身边有爱人陪伴,即使房子小,床小,也觉得无关紧要,因为这些物质上面有了爱的温度,成了家的元素。—— 何珞《婚房》#书摘#
    分享到: