// 思路:巧用進製變數
#if 1
#include #include using namespace std;
listgetrevalue(listll, listlr)
if (iterlr == lr.end())
int sum = (*iterll + *iterlr + carry) % 10;
lres.emplace_back(sum);*/
int sum = 0;
int all = 0;
if (iterll == ll.end())
else if (iterlr == lr.end())
else
sum = all % 10;
lres.emplace_back(sum);
carry = all / 10;
if (iterll != ll.end())
if (iterlr != lr.end())
}if (carry > 0)
return lres;
}int main()
; listlr = ;
listlres = getrevalue(ll, lr);
list::iterator iter = lres.begin();
for (; iter != lres.end(); ++iter)
cout << endl;
return 0;
}#endif
#if 0
#include #include #include using namespace std;
// 暴力查詢
string longestpalindrome(string s)
int maxn = 1;
int idx = 0;
for (int i = 0; i < len - 1; i++) }}
return s.substr(idx, maxn);
}// 動態規劃 只遍歷二維陣列一半的區域
// 思路:找出狀態轉移方程
string longestpalindrome_dp(string s)
if (dp[i][j]) // 更新長度}}
}return s.substr(start, len);
}// 相同思路拓展:最長上公升子串行
string longestrisesub_dp(string s)
if (dp[i][j]) // 更新長度}}
}return s.substr(start, len);
}// 中心擴充套件 時間o(n^2) 空間o(1)
//int computelen(string s, int l, int r)
// else
//
// }
// return j - i - 1;
//}//
//string longestpalindrome_center(string s)
// int maxn = 1;
// int idx = 0;
//// for (int i = 0; i < len - 1; i++)
// }
// return s.substr(idx, maxn);
//}//
//string longestpalindrome_mlc(string s)
// int p[t.size()] = , id = 0, mx = 0, resid = 0, resmx = 0;
// for (int i = 1; i < t.size(); ++i)
// if (resmx < p[i])
// }
// return s.substr((resid - resmx) / 2, resmx - 1);
//}int main()
#endif
#if 0
#include #include #include using namespace std;
class automaton },
},},}};
int get_col(char c)
public:
int sign = 1; // 正負符號
long long ans = 0;
void get(char c)
else if (state == "signed")
sign = c == '+' ? 1 : -1;
}};class solution
};int main()
#endif
// 思路:每次移動較小的邊, 並更新最大容量
#if 0
#include #include #include using namespace std;
uint32_t getmaxcapacity(const vectorv)
uint32_t l = 0, r = v.size() - 1;
uint32_t maxc = 0;
uint32_t tmp = 0;
while (l < r)
if (v[l] <= v[r])
else
}return maxc;
}int main()
; cout << getmaxcapacity(v) << endl;
return 0;
}#endif
LeetCode精選TOP面試題169 多數元素
給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數大於 n 2 的元素。陣列是非空的,並且給定的陣列總是存在多數元素。示例 1 輸入 3 2,3 輸出 3示例 2 輸入 2 2,1 1,1 2,2 輸出 2根據題目描述,給定的陣列總是存在多數元素,而多數元素的定義指在陣列 現...
LeetCode精選TOP面試題53 最大子序和
給定乙個整數陣列 nums 找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。example input 2,1,3,4,1,2,1,5,4 output 6 note 連續子陣列 4,1,2,1 的和最大,為 6思路1 動態規劃 時間複雜度o n 空間複雜度o 1 貪心演算法 ...
面試題精選 微軟試題
微軟試題 1 直線飛行 一架飛機載滿油飛行距離為1,n架飛機最遠能飛多遠?就是不是兜圈沒有迎頭接應的情況,這問題就是n架飛機能飛多遠?存在的極值問題是不要重複飛行,比如兩架飛機同時給一架飛機加油同 時飛回來即可認為是重複,或者換句話說就是離出發點越遠在飛的飛機 就越少,這個極值條件是顯然的,因為n架...