【LeetCode每日一题】520. 检测大写字母

文章目录

题目

一、解题思路

二、结果

1.注意点

2.Java代码

总结


题目

我们定义,在以下情况时,单词的大写用法是正确的:

全部字母都是大写,比如 "USA" 。
单词中所有字母都不是大写,比如 "leetcode" 。
如果单词不只含有一个字母,只有首字母大写, 比如 "Google" 。
给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。

示例 1:

输入:word = "USA"
输出:true

示例 2:

输入:word = "FlaG"
输出:false

提示:

1 <= word.length <= 100
word 由小写和大写英文字母组成

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/detect-capital

一、解题思路

根据题目要求,若单词的大写用法正确,则需要满足:

若第 1 个字母为大写,则其他字母必须均为大写或均为小写,即其他字母必须与第 2 个字母的大小写相同;

若第 1个字母为小写,则其他字母必须均为小写。

根据以上规则,可以整理得到以下更简单的判断规则:

无论第 1 个字母是否大写,其他字母必须与第 2个字母的大小写相同;

若第 1 个字母为小写,则需额外判断第 2 个字母是否为小写。

二、结果

1.注意点

ascii码a是91

2.Java代码

【LeetCode每日一题】520. 检测大写字母

代码如下(示例):

class Solution {
    public boolean detectCapitalUse(String word) {
        //拿出字符中每个数与A作比较
        char[] chs = word.toCharArray();
        int i =0;
        int j =0;
        for (char c:chs){
            if (c < 91) i++;
            else j++;
        }
        return (i == 1 && chs[0] < 91) ||  i == chs.length || j == chs.length  ;
    }
}

总结

终于来了简单题,坚持坚持

上一篇:WordPress 导入数据库报错 Unknown collation: utf8mb4_unicode_520_ci 的解决办法


下一篇:力扣:520. 检测大写字母