摘要:解題思路模擬題就按照題目意思來做題目分三種情況那我們也分三種情況通過設置用來標志第一位是大寫還是小寫小寫的話直接通過后面的都不能大寫來判斷大寫的話用記錄后面的大寫的個數為或者為字符串長度才符合要求代碼如下代碼
模擬題就按照題目意思來做,題目分三種情況,那我們也分三種情況,通過設置flag用來標志第一位是大寫還是小寫,小寫的話,直接通過后面的都不能大寫來判斷,大寫的話,用count記錄后面的大寫的個數,count為1或者為字符串長度才符合要求,代碼如下:
class Solution {public: // 判斷是否是小寫 bool judge(char c) { return (c <= 'z' && c>= 'a'); } bool detectCapitalUse(string word) { // flag用來標志第一位是大寫還是小寫 bool flag = judge(word[0]); int count = 1; int len = word.length(); for(int i = 1; i < len; i ++) { if(flag) { // 第一位小寫要求后面的都不能大寫 if(!judge(word[i])) { return false; } } else { if(!judge(word[i])) { count ++; } } } if(!flag) { // 第一位大寫要求后面的要不全小寫,要不全大寫 if(count == 1 || count == len) { return true; } else { return false; } } return true; }};
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/123341.html
摘要:解題思路一道并不簡單的模擬題,需要考慮的情況總結下來有三種長度不同返回完全相同且有重復字符返回字符串有不相等的兩個地方需要查看它們交換后是否相等即可。 解題思路:...
摘要:解題思路首先要明確一點,就是打亂的英文能夠還原成數字,然后觀察表格規律你就能發現,有的數字一個字母就能決定出現。所以我們從單個字母就能知曉的數字出發進行統計,用一個長度的數組來存儲字母個數,然后對每一個數字一一統計,代碼如下 ...
摘要:解題思路一道非常簡單的題目,不能被繞進去,首先要把題目讀明白,左右坡度差本質上是左右子樹和之差,那么問題就簡單了,每次,返回的就是當前所在子樹之和,更新坡度差的話就是當前左右子樹之差,這兩個要分開來計算,代碼如下 ...
摘要:解題思路這題本質就是數學,需要分析,每個燈泡會被翻轉的時機正好是他的約數次遍歷的時候,那么我們其實知道,對于每個數的約數都是成對出現的,除非是完全平方數,會有奇數個約數,所以,最后完全平方數的燈泡會亮,題目也就變成了找 ...
摘要:解題思路這題就是最基礎的遞歸運算題目,兩個選擇,一個是偶數,一個是奇數,偶數直接除操作,奇數變成左右兩個偶數繼續操作選擇操作最小的,注意有一個用例是,解決方法有兩種,第一就是首先把的二次冪都干掉,代碼如下 ...
閱讀 739·2023-04-25 19:43
閱讀 3983·2021-11-30 14:52
閱讀 3811·2021-11-30 14:52
閱讀 3872·2021-11-29 11:00
閱讀 3806·2021-11-29 11:00
閱讀 3905·2021-11-29 11:00
閱讀 3584·2021-11-29 11:00
閱讀 6192·2021-11-29 11:00