首页 > 学院 > 开发设计 > 正文

leetcode-520-Detect Capital

2019-11-08 01:15:12
字体:
来源:转载
供稿:网友

问题

题目:[leetcode-520]

思路

判断的情形多一点,把每种情形都考虑清楚就好。 合法的情形按照题意就三种:

全部大写:首字母大写,第二个大写,其余大写全部小写:首字母小写,其余小写首字母大写,其余小写:首字母大写,第二个小写,其余小写

代码

/*firstsecondothers*/class Solution {public: bool detectCapitalUse(string Word) { int sz = word.size(); if(!sz) return false; if(1==sz) return true; int first = isupper(word[0])?1:2; // 1 for upper case, 2 for lower case int second = isupper(word[1])?1:2; if(2==first && second!=2) return false; for(int i = 2; i < sz; ++i){ int others = isupper(word[i])?1:2; if(1==first){ if(1==second && others != 1 ) return false; if(2==second && others != 2 ) return false; } else{ if( others != 2 ) return false; } } return true; }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表