\(\color{red}{\mbox{Wrong Answer}}\ 10/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 35/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
getline
輸入人名map<string, int>
存每個人的資金\(\color{lime}{\mbox{Accepted}}\ 100/100\)
map
\(\color{red}{\mbox{Wrong Answer}}\ 28/100\)
\(\color{blue}{\mbox{Time Limit Exceeded}}\ 25/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 6/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 17/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
Union
Union
的時候維護該「集團」的 \(\sum a_i\)\(\color{lime}{\mbox{Accepted}}\ 100/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
void recur(int n, int a, int b, int c) { if (n == k) return; recur(n+1, a, b, c); /// 上面的 a -> c cout << a << " " << b << "\n"; /// 最大的 a -> b recur(n+1, c, b, a); /// 上面的 c -> a cout << b << " " << c << "\n"; /// 最大的 b -> c recur(n+1, a, b, c); /// 上面的 a -> c }
recur(0, 1, 2, 3);
\(\color{blue}{\mbox{Time Limit Exceeded}}\ 11/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 20/100\)
large[i][j]
紀錄 \(a_1, a_2, \ldots, a_{j-1}\) 有多少個數字 \(> a_i\)small[i][j]
紀錄 \(a_{j+1}, a_{j+2}, \ldots, a_N\) 有多少個數字 \(< a_i\)\(\color{orange}{\mbox{Memory Limit Exceeded}}\ 59/100\)
large
跟 small
存在一起short
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 7/100\)
\(\color{red}{\mbox{Wrong Answer}}\ 18/100\)
\(\color{blue}{\mbox{Time Limit Exceeded}}\ 22/100\)
\(\color{blue}{\mbox{Time Limit Exceeded}}\ 35/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
\(\color{lime}{\mbox{Accepted}}\ 100/100\)
以下是只用「暴力」實作可以得到的分數
東西都放在這裡了