題目要求:輸入乙個字串,有大寫有小寫,可以按大寫字母鎖定,也可以按shift,最後要求計算最少按鍵次數可以把這個字串列印出來。
1.遍歷字串,判斷連續2個輸入的狀態
2.只在本次輸入為大寫且未鎖定狀態下按鍵次數times++,如果下乙個輸入為大寫,就讓本次按鍵為lock,修改lock標記為true,如果下乙個輸入為小寫,讓本次按鍵為shift,保持lock為false狀態;
3. 同樣的,只有當輸入為小寫且鎖定狀態,按鍵次數times++,如果下乙個輸入為小寫,就讓本次按鍵為lock,修改lock標記為false,如果下乙個輸入為大寫,讓本次按鍵為shift,保持lock為true狀態;
好了,廢話不多說,上**
public static void main(string args)
times++;
}// 3. 判斷是否為小寫且鎖定狀態
if(ch <='z' && ch >= 'a' && flag == true)
times++;
}}
system.out.println("輸入需要按鍵:"+times+" 次");
}
測試結果
最優打字策略 京東筆試
在英文的輸入中,我們經常會遇到大小寫切換的問題,頻繁切換大小寫會增加我們的按鍵次數,也會降低我們的打字效率。眾所周知,切換大小寫有兩種方式,一種是按下 caps locks 也就是大寫鎖定鍵,這樣一來,之後的輸入模式都會被切換。另一種是同時按下shift和需要列印的字母,可以臨時切換大小寫 算作按下...
京東校招筆試題
題目摘自牛客網 給定字串 ascii碼0 255 陣列,請在不開闢額外空間的情況下刪除開始和結尾處的空格,並將中間的多個連續的空格合併成乙個。例如 i am a little boy.變成 i am a little boy 語言不限,但不要用偽 作答,函式輸入輸出請參考如下的函式原型 void f...
京東校招筆試 保衛方案
時間限制 c c 語言1000ms 其他語言3000ms 記憶體限制 c c 語言65536kb 其他語言589824kb 題目描述 戰爭遊戲的至關重要環節就要到來了,這次的結果將決定王國的生死存亡,小b負責首度的防衛工作。首都處於乙個四面環山的盆地,周圍的n個小山構成乙個環,作為預警措施,小b計畫...