π μκ³ λ¦¬μ¦/ETC

μ΅μ₯곡ν΅λΆλΆμμ΄(Longest Common Subsequence - LCS)
1. κ°λ π’ μ΅μ₯곡ν΅λΆλΆμμ΄(Longest Common Subsequence)μ΄λ μ£Όμ΄μ§ μμ΄μ λΆλΆ μμ΄μμ κ°μ₯ κΈ΄ κ²μ μλ―Ένλ€. μμ κ·Έλ¦Όμμ μ μ μλ κ²μ²λΌ λΆλΆ μμ΄μ΄ μ°μμ μΌ νμλ μλ€. 2. λμλ°©μ π¦ λμ λ°©μμ DPλ₯Ό μ΄μ©νλ€. λ¬Έμμ΄ Aμ λ¬Έμμ΄ Bκ° μ£Όμ΄μ‘λ€κ³ νμ. λ¬Έμμ΄ Aμ λ¬Έμμ΄ Bλ₯Ό ν κΈμμ© λΉκ΅νλ€. λΉκ΅νλ λ¬Έμκ° κ°λ€λ©΄ DP[i][j] = DP[i - 1][j - 1] + 1μ΄ λλ€. λΉκ΅νλ λ¬Έμκ° λ€λ₯΄λ€λ©΄ DP[i][j]λ DP[i-1][j]μ DP[i][j-1] μ€μ ν° κ°μΌλ‘ μ€μ νλ€. 1λ²κ³Ό 2λ² κ³Όμ μ λ°λ³΅νλ€. μ¬κΈ°μ λ§νλ DP[i][j]λ λ¬Έμμ΄ Aλ iλ²μ§ΈκΉμ§ λ¬Έμμ΄ Bλ jλ²μ§ΈκΉμ§ κ³ λ €νμμ κ²½μ°μ μ»μ μ μλ μ΅μ₯곡ν΅λΆλΆμμ΄μ κΈΈμ΄μ΄λ€..

μ΅μ₯곡ν΅λ¬Έμμ΄(Longest Common Substring - LCS)
λ€μ΄κ°κΈ°μ μμ LCSλ₯Ό ꡬλ³νλλ‘ νμ. μΌλ°μ μΌλ‘ LCSλΌκ³ νλ©΄ μ΅μ₯곡ν΅λΆλΆμμ΄(Longest Common Subsequence)μ λ»νμ§λ§, μ΅μ₯κ³΅ν΅ λ¬Έμμ΄(Longest Common Sustring)λ LCSλΌκ³ λΆλ₯΄κΈ°λ νλ€. λμ μ°¨μ΄μ μ ꡬνκ³ μ νλ λΆλΆ λ¬Έμμ΄μ μ°μμ±μ΄λΌκ³ ν μ μλ€. μ΄λ² κΈμμλ μ΅μ₯κ³΅ν΅ λ¬Έμμ΄(Longest Common Substring)μ λν΄μ λ¨Όμ μμ보μ 1. κ°λ π¦ μ΅μ₯곡ν΅λΆλΆλ¬Έμμ΄(LCS)μ μ°μλ λΆλΆ λ¬Έμμ΄ μ€ κ°μ₯ κΈΈμ΄κ° κΈ΄ λ¬Έμμ΄μ λ§νλ€. 2. λμ λ°©μ π λμ λ°©μμ DPλ₯Ό μ΄μ©νλ€. λ¬Έμμ΄ Aμ λ¬Έμμ΄ Bκ° μ£Όμ΄μ‘λ€κ³ νμ. λ¬Έμμ΄ Aμ λ¬Έμμ΄ Bλ₯Ό ν κΈμμ© λΉκ΅νλ€. λΉκ΅νλ λ¬Έμκ° κ°λ€λ©΄ DP[i][j]λ DP[i-1][j-1] ..

μ΅μ₯μ¦κ°λΆλΆμμ΄(Longest Increasing Subsequence - LIS)
1. κ°λ π μ΅μ₯ μ¦κ° λΆλΆ μμ΄(LIS - Longest Increasing Subsequence)μ΄λ μμμ μμ΄λ‘ λ§λ λΆλΆ μμ΄ μ€ μ€λ¦μ°¨μμΌλ‘ μ λ ¬λ κ°μ₯ κΈ΄ μμ΄μ μλ―Ένλ€. '3 2 6 4 5 1'μ΄ μλ€κ³ νμ. ν΄λΉ μμ΄μ λΆλΆ μμ΄μ {3}, {2}, {6},... {3, 2}, {2, 1},... {2, 6, 4}, {2, 4, 5},... {3, 2, 5, 1},... {2, 6, 4, 5, 1},... {3, 2, 6, 4, 5, 1} λ±μ΄ μ‘΄μ¬νλ€. μ¬κΈ°μ μ΅μ₯ μ¦κ° λΆλΆ μμ΄μ {2, 4, 5}μ΄λ©° κ·Έ κΈΈμ΄λ 3μ΄ λκ² λλ€. μ΄λ² κΈμ ν΅ν΄ μ΅μ₯ μ¦κ° λΆλΆ μμ΄μ κΈΈμ΄λ₯Ό ꡬνλ 3κ°μ§ λ°©λ²μ μμ보μ. μμλ μκ°λ³΅μ‘λκ° ν° κ²μμλΆν° μμ κ²μΌλ‘ μ§νλλ€. 2. λ°©λ² 1 ..

μλ‘μ μ§ν©(Disjoint-sets)
1. μλ‘μ μ§ν©μ κ°λ λ° μ΄ν΄ πΊ 1. κ°λ μλ‘μ μ§ν©μ΄λ μλ‘ μ€λ³΅ ν¬ν¨λ μμκ° μλ μ§ν©μ λ§νλ€. κ΅μ§ν©μ΄ μλ(null) μ§ν©μ΄λ€. 2. λνμ μ§ν©μ μν νλμ νΉμ λ©€λ²λ₯Ό λνμλΌκ³ νλ€. μ΄λ μ§ν©μ ꡬλΆνκΈ° μν΄ μ¬μ©λλ€. 3. μμ λΉ λ₯Έ μ΄ν΄λ₯Ό μν΄ κ°λ¨ν μμλ₯Ό μ΄ν΄λ³΄μ. 5λͺ μ νμ(A, B, C, D, E)μ΄ μλ€κ³ νμ. {A}, {B}, {C}, {D}, {E} μλμ κ°μ μΉκ΅¬ κ΄κ³κ° μλ€κ³ νμ. A - B B - C D - E μΉκ΅¬ κ΄κ³λ₯Ό ν΅ν΄μ 2κ°μ μ§ν©μ λ§λ€ μ μλ€. G1 = {A, B, C} G2 = {D, E} μλ‘ μ€λ³΅ ν¬ν¨λ μμκ° μμΌλ―λ‘ μ΄λ μλ‘μ μ§ν©μ΄λ€. (ν μ¬λμ΄ λΆμ μ μ μ¨μ μμͺ½ μ§ν©μ ν¬ν¨λ μ μμΌλ―λ‘ λΉμ°ν κ²°κ³Όμ΄λ€.) 2. ν..