問題a
#include
#include
using
namespace std;
int m,n;
const
int n =
1010
;int dp[n]
[n];
intmain()
} cout << dp[m]
[n]<< endl;
}return0;
}
問題b#include
#include
#include
using
namespace std;
const
int n =
1e5+2;
int a[n]
,b[n]
;//a存放奇數 b存放偶數
bool
cmp(
int a,
int b)
intmain()
else
if(x %2!=
0)}sort
(a,a + index_a,cmp)
;sort
(b,b + index_b,cmp)
;for
(int i =
0; i < index_a; i ++
)for
(int i =
0; i < index_b -
1; i ++)
cout << b[index_b -1]
<< endl;
}return0;
}
問題c#include
using
namespace std;
typedef
char datatype;
typedef
struct nodetreenode,
*binttree;
binttree createtree()
else
return btree;
}//後序遍歷
void
unpreorder
(binttree tree)
}int
main()
問題d#include
using
namespace std;
//f(n,m)=(f(n - 1,m)+m)%n
intcir
(int n,
int m)
return p +1;
}int
main()
return0;
}
問題e#include
using
namespace std;
intmain()
else
//n的橫縱座標
int index_n_i =
(n -1)
/ w;
int index_n_j;
if(index_n_i %2==
0)else
cout <<
abs(index_n_j - index_m_j + index_n_i - index_m_i)
<< endl;
}return0;
}
問題f#include
#include
#include
#include
#include
using
namespace std;
inta
(int a,
int b)
return g;
}intc(
int a,
int b)
intmain()
else
}//檢測
/*for(it = mymap.begin();it != mymap.end(); it ++)
}for
(it = mymap.
begin()
; it != mymap.
end(
); it++)}
cout<}return0;
}
注意:問題f可以有其他解法,上面的解法主要是為了想讓你們了解stl中的hash_map,大致思路就是記錄重複字母的次數,然後用高中的排列組合來做。建議大家使用next_permutation全排列來做。第一題也可以使用遞推、dfs、dp來做,我給出的**是dp(動態規劃) 2023年春3月月賽題解
問題a string 1.題意 找出乙個字串在另乙個字串出現的次數 2.解法 此題解法較多,看 就應該知道了 第一種解法 include include using namespace std intmain cout count endl return0 第二種解法 include using n...
洛谷7月月賽題解(2020)
醜話說在前面,我只寫了前三個的題解 因為有人告訴我第四題沒有價值!標題黨,廣大oier看了直呼內行!真就簽到題唄。反正就是把冪魔改成開根向下取個整。看 吧。int main 混,混凝土?擦汗 哎呀不就等腰三角形嗎,分類討論一手等腰和等邊,選取 1 2 len 1 的邊進行一下組合運算,就像我這樣的蒟...
華東師範大學2023年7月月賽
a 當時少考慮了一種情況,吸取教訓。假設a的數量為a b的數量為b 思路 1.對於每個以b結尾的字首都應該保證a b 如果b a 比如abbba 是不可能出現這種情況的,所以直接輸出dead fang 2.去掉字串後面的a,如果字串裡面有倆個連續的a那麼這個a既可以有操作1生成有可以有操作2 生成,...