首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Leetcode 520. Detect Capital 发现大写词 (字符串)

Leetcode 520. Detect Capital 发现大写词 (字符串)

作者头像
racaljk
发布2018-08-31 10:53:11
4160
发布2018-08-31 10:53:11
举报
文章被收录于专栏:racaljkracaljkracaljk

Leetcode 520. Detect Capital 发现大写词 (字符串)

题目描述

已知一个单词,你需要给出它是否为"大写词" 我们定义的"大写词"有下面三种情况:

  1. 所有字母都是大写,比如"USA"
  2. 所有字母都不是大写,比如"leetcode"
  3. 只有第一个字母是大写,比如"Google"

测试样例

Input: "USA"
Output: True

Input: "FlaG"
Output: False

详细分析

水题,按照上面定义的三种情况写代码即可。 稍微值得注意的是如果字符串为空输出是true

代码实现

class Solution {
public:
    bool detectCapitalUse(string word) {
        if (word.length() == 0) {
            return true;
        }
        bool capitalFirst = false;
        int capitalCnt = 0;
        if (isupper(word[0])) {
            capitalFirst = true;
            capitalCnt++;
        }
        for (int i = 1; i < word.length(); i++) {
            if (isupper(word.at(i))) {
                capitalCnt++;
            }
        }
        if (capitalCnt == 0 ||
            capitalCnt == word.length() ||
            (capitalFirst && capitalCnt == 1)) {
            return true;
        }
        return false;
    }
};
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-02-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Leetcode 520. Detect Capital 发现大写词 (字符串)
    • 题目描述
      • 测试样例
        • 详细分析
          • 代码实现
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档