Re: [閒聊] 每日LeetCode已回收
今天練習了兩種問題
https://i.imgur.com/AzldwL3.png

問題一:
給三種掛號
看他是不是合法存在
程式碼;
bool isValid(char* s)
{
int oin[10001] = {0};
int xd = 0;
int len = strlen(s);
if(len>1)
{
for(int i = 0 ; i < len ; i++)
{
if(s[i] == '(')
{
oin[xd] = 1;
xd++;
}
if(s[i] == '[')
{
oin[xd] = 2;
xd++;
}
if(s[i] == '{')
{
oin[xd] = 3;
xd++;
}
if(s[i] == ')')
{
if(xd==0)
return false;
if( oin[xd-1] == 2 || oin[xd-1] == 3 )
return false;
else
{
oin[xd] = 0 ;
xd--;
}
}
if(s[i] == ']')
{
if(xd==0)
return false;
if(oin[xd-1]==1 || oin[xd-1]==3)
return false;
else
{
oin[xd] = 0 ;
xd--;
}
}
if(s[i] == '}')
{
if(xd==0)
return false;
if(oin[xd-1]==1 || oin[xd-1]==2)
return false;
else
{
oin[xd] = 0 ;
xd--;
}
}
}
if(xd==0)
return true;
}
return false;
}
https://i.imgur.com/RaTmcA8.png

問題二:
一次走一或二步
走上n層台階的方法
程式碼:
int climbStairs(int n)
{
int reimu = 0;
int oin[45] = {1,2};
for(int i = 2 ; i < n ;i++)
{
oin[i] = oin[i-1] + oin[i-2];
}
if(n==1)
return 1;
if(n==2)
return 2;
reimu = oin[n-1];
return reimu;
}
========================
今天學了最基礎的堆疊跟動態規劃
堆疊的題目我卡了一陣子
還好都有想明白
我要繼續姆咪
晚安
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 134.208.57.64 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1699117850.A.017.html
推
11/05 01:14,
2年前
, 1F
11/05 01:14, 1F
→
11/05 01:15,
2年前
, 2F
11/05 01:15, 2F
推
11/05 02:05,
2年前
, 3F
11/05 02:05, 3F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 488 之 719 篇):