Algorithm(81)
-
๋ฐฑ์ค - ๊ธฐํ์ค(Swift)
๋ฐฑ์ค - ๊ธฐํ์ค(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/1049 1049๋ฒ: ๊ธฐํ์ค ์ฒซ์งธ ์ค์ N๊ณผ M์ด ์ฃผ์ด์ง๋ค. N์ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , M์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ๊ฐ ๋ธ๋๋์ ํจํค์ง ๊ฐ๊ฒฉ๊ณผ ๋ฑ๊ฐ์ ๊ฐ๊ฒฉ์ด ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํ์ฌ ์ฃผ www.acmicpc.net ๋์ ํ์ด ์ฒ์์ ์ด ๋ฌธ์ ๋ฅผ ํ์๋ ํ ๊ฐ์ง ๋ธ๋๋๋ง ์์๋ ์ต์๊ฐ์ธ๊ฑธ๋ก ์คํด๋ฅผ ํ์๋ค. ํ์ง๋ง ์์ ๋ฅผ ๋ณด๋ฉด์ ์๋ ๊ฒ์ ์๊ฒ๋์๊ณ ํจํค์ง์ค์ ๊ฐ์ฅ ์ต์์ ๊ฐ๊ณผ ๋ฑ๊ฐ ์ค ๊ฐ์ฅ ์ต์์ ๊ฐ์ ๊ตฌํ ๋ค 1. ํจํค์ง๋ง ์ ๋ถ ์์ ๋ 2. ํจํค์ง + ๋ฑ๊ฐ๋ฅผ ์์ ๋ 3. ๋ฑ๊ฐ๋ก๋ง ์์๋ ๋ก ๋๋์ด์ ํ์๋ค. 2๋ฒ์ ๊ฒฝ์ฐ ํจํค์ง๋ฅผ ์ต๋ํ ๋ง์ด์ฌ๋ฉด ์ข์๋ฐ ๊ทธ ์ด์ ๋ ..
2022.10.25 -
๋ฐฑ์ค - ๋ณด์๋๋(Swift)
๋ฐฑ์ค - ๋ณด์๋๋(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/1202 1202๋ฒ: ๋ณด์ ๋๋ ์ฒซ์งธ ์ค์ N๊ณผ K๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ N, K ≤ 300,000) ๋ค์ N๊ฐ ์ค์๋ ๊ฐ ๋ณด์์ ์ ๋ณด Mi์ Vi๊ฐ ์ฃผ์ด์ง๋ค. (0 ≤ Mi, Vi ≤ 1,000,000) ๋ค์ K๊ฐ ์ค์๋ ๊ฐ๋ฐฉ์ ๋ด์ ์ ์๋ ์ต๋ ๋ฌด๊ฒ Ci๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ Ci www.acmicpc.net ๋์ ํ์ด ๊ฐ๊ฒฉ์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ๊ฐ๋ฐฉ์ ๋ฌด๊ฒ๊ฐ ์์ ๊ฒ๋ถํฐ ํ์ํ๋ ์์ด๋์ด๋ ์ฌ๋ฐ๋ฅธ ์ ๊ทผ์ด์์ง๋ง n๊ณผ k๊ฐ 300,000๊น์ง์ด๊ธฐ ๋๋ฌธ์ for๋ฌธ์์ filter์์๋ 300,000*(300000log300000)์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ๊ฒ๋๊ธฐ ๋๋ฌธ์ ๋ง์ง์์๋ค. import Foundation le..
2022.10.25 -
๋ฐฑ์ค - ์บ ํ(Swift)
๋ฐฑ์ค - ์บ ํ(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/4796 4796๋ฒ: ์บ ํ ์ ๋ ฅ์ ์ฌ๋ฌ ๊ฐ์ ํ ์คํธ ์ผ์ด์ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , L, P, V๋ฅผ ์์๋๋ก ํฌํจํ๊ณ ์๋ค. ๋ชจ๋ ์ ๋ ฅ ์ ์๋ int๋ฒ์์ด๋ค. ๋ง์ง๋ง ์ค์๋ 0์ด 3๊ฐ ์ฃผ์ด์ง๋ค. www.acmicpc.net ๋์ ํ์ด ์ด๋ ต์ง ์์ ๊ทธ๋ฆฌ๋ ๋ฌธ์ ์๋ค. ํ๋ ์๊ฐํด์ผํ ๊ฒ์ 3, 8, 20์ด ํ ์คํธ์ผ์ด์ค๋ก ๋ค์ด์์๋ 20์ผ ์ค 16์ผ ๋์ 6์ผ์ ํ ์ ์๊ณ ๋๋จธ์ง 4์ผ์ 8์ผ๋์ ํ ์ ์๋๊ฒ 3์ผ์ด๊ธฐ ๋๋ฌธ์ 3์ ๋ํด์ค์ผํ๋ ๊ฒ์ด๋ค. import Foundation var tc = 0 while true { tc += 1 let input = readLine(..
2022.10.25 -
๋ฐฑ์ค A->B(Swift)
๋ฐฑ์ค A->B(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/16953 16953๋ฒ: A → B ์ฒซ์งธ ์ค์ A, B (1 ≤ A t..
2022.10.24 -
๋ฐฑ์ค - ๋ค์ง๊ธฐ(Swift)
๋ฐฑ์ค - ๋ค์ง๊ธฐ(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/1439 1439๋ฒ: ๋ค์ง๊ธฐ ๋ค์์ด๋ 0๊ณผ 1๋ก๋ง ์ด๋ฃจ์ด์ง ๋ฌธ์์ด S๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ๋ค์์ด๋ ์ด ๋ฌธ์์ด S์ ์๋ ๋ชจ๋ ์ซ์๋ฅผ ์ ๋ถ ๊ฐ๊ฒ ๋ง๋ค๋ ค๊ณ ํ๋ค. ๋ค์์ด๊ฐ ํ ์ ์๋ ํ๋์ S์์ ์ฐ์๋ ํ๋ ์ด์์ ์ซ์๋ฅผ ์ก๊ณ ๋ชจ www.acmicpc.net ๋์ ํ์ด ์ฐ์์ ์ธ 0์ ์์ 1์ ์๋ฅผ ๊ฐ๊ฐ ์นด์ดํธํด์ ์์์ชฝ์ ์ถ๋ ฅํ๋ฉด ๋๋ ๋ฌธ์ ๋ค. import Foundation let input = readLine()! var a = input.split(separator: "0") var b = input.split(separator: "1") if a.count > b.count { print(b.count)..
2022.10.24 -
๋ฐฑ์ค - ์นด๋ ์ ๋ ฌํ๊ธฐ(Swift)
๋ฐฑ์ค - ์นด๋ ์ ๋ ฌํ๊ธฐ(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/1715 1715๋ฒ: ์นด๋ ์ ๋ ฌํ๊ธฐ ์ ๋ ฌ๋ ๋ ๋ฌถ์์ ์ซ์ ์นด๋๊ฐ ์๋ค๊ณ ํ์. ๊ฐ ๋ฌถ์์ ์นด๋์ ์๋ฅผ A, B๋ผ ํ๋ฉด ๋ณดํต ๋ ๋ฌถ์์ ํฉ์ณ์ ํ๋๋ก ๋ง๋๋ ๋ฐ์๋ A+B ๋ฒ์ ๋น๊ต๋ฅผ ํด์ผ ํ๋ค. ์ด๋ฅผํ ๋ฉด, 20์ฅ์ ์ซ์ ์นด๋ ๋ฌถ์๊ณผ 30์ฅ www.acmicpc.net ๋์ ํ์ด ๊ฐ์ฅ ์์ ์ซ์ 2๊ฐ๋ฅผ ๋ฝ์์ ๋์ ์ํค๋ฉด ๋๋ ๊ฒ์ ์์์ง๋ง 100,000๊ฐ์ธ ์ซ์๋ฅผ sortํ๋ค๋ ๊ฒ์ ์๊ฐ๋ณต์ก๋๊ฐ ๋๋ฌด ๋์์ ธ๋ฒ๋ฆฐ๋ค๋ ํ์ ์ด ์์๋ค. ๊ทธ๋์ ๋ค๋ฅธ์ฌ๋์ ํ์ด๋ฅผ ์ฐธ๊ณ ํ์ฌ ์ฐ์ ์์ ํ๋ฅผ ์ด์ฉํด์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ์๋ ์ฝ๋์ ์ฐ์ ์์ ํ๋ Heap(array: ๋ฐฐ์ด๋ณ์, sort: ์ ๋ ฌ๋ฐฉํฅ)์ผ๋ก ์ ์ธํ ์ ์์ผ..
2022.10.24