1.当 s[i] 为 'E'羽田爱吧,暗意一位顾主过问候诊室并占用一把椅子。
2.当 s[i] 为 'L',暗意一位顾主离开候诊室,开释一把椅子。
请贪图并复返为确保每位过问候诊室的顾主皆有座位所需的最少椅子数目,假定候诊室一出手是空的。
1
s 仅由字母 'E' 和 'L' 构成。
s 暗意一个有用的相差序列。
输入:s = "EEEEEEE"。
输出:7。
阐述:
每秒后皆有一个顾主过问候诊室,莫得东说念主离开。因此,至少需要 7 把椅子。
谜底2025-01-05:
chatgpt[1]
题目来自leetcode3168。
大体才调如下:
1. 函数 minimumChairs 经受一个字符串 s羽田爱吧,代表顾主相差候诊室的情况。启动化变量 cnt 为0,用于追踪现时正在使用的椅子数目。另外,启动将谜底 ans 设为0。
2. 出手遍历字符串 s 中的每个字符 c。
3. 关于每个字符 c,检查它是否为 'E',代表有顾主过问候诊室。要是是,则将 cnt 值加一,暗意多占用一个椅子,然后将 ans 更新为现时 ans 与 cnt 的最大值。这么不错纪录候诊室中需要的最多椅子数目。
4. 要是字符 c 不是 'E',则暗意有顾主离开,此时将 cnt 值减一,开释一个椅子。
5. 遍历完成后,复返最终的 ans 即为确保每位过问候诊室的顾主皆有座位所需的最少椅子数目。
转头:
• 工夫复杂度:遍历字符串 s 的工夫复杂度为 O(N),其中 N 为字符串 s 的长度。
欧美人体艺术• 空间复杂度:除了输入参数外,只使用了常数级的独特空间,因此空间复杂度为 O(1)。
Go齐全代码如下:
package mainimport ( "fmt")func minimumChairs(s string) (ans int) { cnt := 0 for _, c := range s { if c == 'E' { cnt++ ans = max(ans, cnt) } else { cnt-- } } return}func main { s := "EEEEEEE" result := minimumChairs(s) fmt.Println(result)}
Rust齐全代码如下:
fn minimum_chairs(s: &str) -> i32 { let mut cnt = 0; let mut ans = 0; for c in s.chars { if c == 'E' { cnt += 1; ans = ans.max(cnt); } else { cnt -= 1; } } ans}fn main { let s = "EEEEEEE"; let result = minimum_chairs(s); println!("{}", result);}
C齐全代码如下:
#include #include int max(int a, int b) { return a > b ? a : b;}int minimum_chairs(const char* s) { int cnt = 0; int ans = 0; for (int i = 0; i
C++齐全代码如下:
#include #include #include int minimumChairs(const std::string& s) { int cnt = 0; int ans = 0; for (char c : s) { if (c == 'E') { cnt++; ans = std::max(ans, cnt); } else { cnt--; } } return ans;}int main { std::string s = "EEEEEEE"; int result = minimumChairs(s); std::cout
Python齐全代码如下:
# -*-coding:utf-8-*-def minimum_chairs(s: str) -> int: cnt = 0 ans = 0 for c in s: if c == 'E': cnt += 1 ans = max(ans, cnt) else: cnt -= 1 return ansif __name__ == "__main__": s = "EEEEEEE" result = minimum_chairs(s) print(result)
Shell齐全代码如下:
#!/bin/bash# 贪图所需的最小椅子数目function minimum_chairs { local s="$1" local cnt=0 local ans=0 for (( i=0; i ans )); then ans=$cnt fi else ((cnt--)) fi done echo "$ans"}# 主函数function main { local s="EEEEEEE" local result result=$(minimum_chairs "$s") echo "$result"}# 调用主函数main
援用衔接
[1] chatgpt: https://chatbotsplace.com/?rc=nnNWSCJ7EP羽田爱吧