360笔试3.6日

投的服务端c++暑期实习,但是转码来的这题目一头雾水啊
40选择
2个编程

第一道编程题   字符串合法性判断,只过了9%,测试用例都能过,有人能指点一下么,感谢
#include  <iostream> 
#include  <string> 
using namespace std;

int main(){
    int n;
    while (cin >> n)
    {
        if (cin.get() == '\n')
        {
            break;
        }
    }
    int sum = 0;//有效数量
    while (n)
    {
        string str;
        getline(cin, str);
        if (str.size() > 10)//长度判断
        {
            n--;
        }
        else
        {
            int flag = 0;
            for (int i = 0; i < str.size(); i++)//字符类型判断
            {
                if (!(str[i] - 'A' >= 0 && str[i] - 'A' <= 26 
               || str[i] - 'a' <= 26 && str[i] - 'a' >= 0))
                {
                    flag = 1;
                    break;
                }
            }
            if (flag == 0)
            {
                sum++;
            }
            n--;
        }
    }
    cout << sum;
    return 0;
}

#360笔试##360公司##笔经#
全部评论
请问一下360的编码只能网页吗 还是可以idea
1 回复 分享
发布于 2022-03-18 16:14
核心代码,我是这么写的   public boolean  vaild(String s){         //map里有  A H I M N O T U V W X Y         int l=0;         int r=s.length()-1;         while(l<r){             if(s.charAt(l)!=s.charAt(r)||!map.containsKey(s.charAt(l))||!map.containsKey(s.charAt(r))){                 return false;             }             l++;             r--;         }         return true;     }
点赞 回复 分享
发布于 2022-03-06 20:24

相关推荐

OffersGettttt:为啥现在看到大多数公司都有提前实习的要求
点赞 评论 收藏
分享
点赞 2 评论
分享
牛客网
牛客企业服务