做過的題再遇到還是想不起來,還是勤勞一點,多做筆記把
重新格式化字串比賽時候完全用字串拼接,寫了很長時間。賽後看大佬們討論,才想到用棧儲存
這個就是先把數字儲存乙個棧,然後字母儲存乙個棧,然後看他麼的差是否大於1.之後一人一下的往裡面放。
class
solution
if(math.
abs(stack1.
size()
- stack2.
size()
)>1)
return str;
stack
temp =
newstack()
;if(stack2.
size()
> stack1.
size()
)while
(!stack1.
empty()
||!stack2.
empty()
)return str;
}}
點菜展示表平時刷題很少用到treemap,賽後學習到了。
class
solution
else
else}}
//2、將訂單map寫到結果集中
list
> result =
newarraylist
<
>()
;// 2.1 新增第一行標題、
arraylist
title =
newarraylist
<
>()
; title.
add(
"table");
for(string s : foodset)
result.
add(title)
; 遍歷訂單map,將資訊寫到結果結合
settables = ordermap.
keyset()
;for
(string tablen : tables)
else
} result.
add(list);}
return result;
}}
這道題是真的麻煩,所以引用題解區一位大佬詳細的注釋題解。
數青蛙
思路。統計青蛙叫的過程,這裡可以只統計c或者統計所有字母。
出現一次c就累加一次,遇到k就減一次
然後取其**現最大的
第二個問題
就是如何判斷有效性,
首先 上來可以判斷下是否是5的倍數,
其次 後面出現字母的次數一定小於前面出現
比如 croaak 在遇到第二個a的時候,o才只有乙個 a卻能出現兩個,所以就可以直接返回-1。
class
solution
mapmap =
newhashmap
<
>()
; map.
put(
'c',0)
; map.
put(
'r',1)
; map.
put(
'o',2)
; map.
put(
'a',3)
; map.
put(
'k',4)
;int
counts =
newint[5
];int result =0;
for(
char c : chars)}}
return result;
}}
生成陣列
太難了 題解也看不懂。我先學習學習
第185場力扣周賽題解
5388.重新格式化字串 思路 做法很多,我的方法是定義兩個佇列分別存數字和字元,然後在滿足題目要求能夠格式化的情況下穿插著加入答案即可。class solution if math.abs q1.size q2.size 1 return if q1.size q2.size work q1,q2...
Leetcode第132場周賽題目學習
愛麗絲和鮑勃一起玩遊戲,他們輪流行動。愛麗絲先手開局。最初,黑板上有乙個數字n。在每個玩家的回合,玩家需要執行以下操作 如果玩家無法執行這些操作,就會輸掉遊戲。只有在愛麗絲在遊戲中取得勝利時才返回true,否則返回false。假設兩個玩家都以最佳狀態參與遊戲。示例1 輸入 2 輸出 true 解釋 ...
Leetcode第134場周賽題目學習
三枚石子放置在數軸上,位置分別為a,b,c。每一回合,我們假設這三枚石子當前分別位於位置x,y,z且x y z。從位置x或者是位置z拿起一枚石子,並將該石子移動到某一整數字置k處,其中x k z且k y。當你無法進行任何移動時,即,這些石子的位置連續時,遊戲結束。要使遊戲結束,你可以執行的最小和最大...