Algorithm(81)
-
๋ฐฑ์ค - ํ์กฐ์์ด์ ๋ฆฌํ๊ณ ์ดใ ใ (Swift)
๋ฐฑ์ค - ํ์กฐ์์ด์ ๋ฆฌํ๊ณ ์ดใ ใ (Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/14659 14659๋ฒ: ํ์กฐ์์ด์ ๋ฆฌํ๊ณ ์ดใ ใ ์ฒซ์งธ ์ค์ ๋ด์ฐ๋ฆฌ์ ์ ๊ฒธ ํ์ก์ด์ ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 30,000) ๋์งธ ์ค์ N๊ฐ ๋ด์ฐ๋ฆฌ์ ๋์ด๊ฐ ์ผ์ชฝ ๋ด์ฐ๋ฆฌ๋ถํฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. (1 ≤ ๋์ด ≤ 100,000) ๊ฐ๊ฐ ๋ด์ฐ๋ฆฌ์ ๋์ด๋ ์ค๋ณต ์์ด www.acmicpc.net ๋์ ํ์ด ๋ฑ O(N)๋งํผ๋ง ๋๋ฉด ๋๋ ๊ฐ๋จํ ํ์ด๋ค. import Foundation let input = Int(readLine()!)! let arr = readLine()!.components(separatedBy:" ").map{Int($0)!} var maxCnt = 0 var cnt = 0 v..
2022.11.07 -
๋ฐฑ์ค - ๋ฑ์ ๋ฉ๊ธฐ๊ธฐ(Swift)
๋ฐฑ์ค - ๋ฑ์ ๋ฉ๊ธฐ๊ธฐ(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/2012 2012๋ฒ: ๋ฑ์ ๋งค๊ธฐ๊ธฐ ์ฒซ์งธ ์ค์ ์์ฐ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 500,000) ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๊ฑธ์ณ ๊ฐ ์ฌ๋์ ์์ ๋ฑ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. ์์ ๋ฑ์๋ 500,000 ์ดํ์ ์์ฐ์์ด๋ค. www.acmicpc.net ๋์ ํ์ด ์์ํ๋ ๋ฑ์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ๋ค 1๋ฑ๋ถํฐ ๋๋ฒํธ๊น์ง ๋นผ์ฃผ๋ฉด ์ต์๊ฐ ๋๋ค. import Foundation let n = Int(readLine()!)! var arr = [Int]() for _ in 0..
2022.11.07 -
๋ฐฑ์ค - ๊ณผ์ (Swift)
๋ฐฑ์ค - ๊ณผ์ (Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/13904 13904๋ฒ: ๊ณผ์ ์์ ์์ ๋ค์ฏ ๋ฒ์งธ, ๋ค ๋ฒ์งธ, ๋ ๋ฒ์งธ, ์ฒซ ๋ฒ์งธ, ์ผ๊ณฑ ๋ฒ์งธ ๊ณผ์ ์์ผ๋ก ์ํํ๊ณ , ์ธ ๋ฒ์งธ, ์ฌ์ฏ ๋ฒ์งธ ๊ณผ์ ๋ฅผ ํฌ๊ธฐํ๋ฉด 185์ ์ ์ป์ ์ ์๋ค. www.acmicpc.net ๋์ ํ์ด ์ ์๋ฅผ ์ต๋ํ์ผ๋ก ์ป๊ธฐ ์ํด์ ํฐ ์ ์๋ถํฐ ๋ฐฐ์น๋ฅผ ํ๋ ๊ฒ ๊ฐ์ฅ ๊ทธ๋ฆฌ๋ํ ์ ๊ทผ์ด๋ค. ์ฌ๊ธฐ์ ๊ด๊ฑด์ ๋ง๊ฐ๊ธฐํ์ ๊ณ ๋ คํด์ ํฐ ์ ์๋ฅผ ๋ฐฐ์นํ๋ ๊ฒ์ธ๋ฐ, ์ด๋ ๋ฐฉ๋ฌธํ์๋ฅผ ํตํด ํด๊ฒฐํ ์ ์๋ค. ์๋ฅผ ๋ค์ด๋ณด์. ๋ฌธ์ ์ ์์๋ฅผ ์ ์๋ณ๋ก ์ ๋ ฌํ๋ฉด ์๋์ฒ๋ผ ๋๋ค. 4 60 2 50 4 40 3 30 1 20 4 10 6 5 (4 60)์ ๋จผ์ ๋ฝ์๋ค๋ฉด ๋ง๊ฐ๊ธฐํ์ด 4์ผ์ ๊ฐ์ฅ ๋ง์ง๋ง์ ๋ฐฐ์น๋ฅผํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์..
2022.11.07 -
๋ฐฑ์ค - ์ด์ฅ๋ ์ด๋(Swift)
๋ฐฑ์ค - ์ด์ฅ๋ ์ด๋(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/9237 9237๋ฒ: ์ด์ฅ๋ ์ด๋ ์ ๋ ฅ์ ๋ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ์ฒซ์งธ ์ค์๋ ๋ฌ๋ชฉ์ ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ๊ฐ ๋๋ฌด๊ฐ ๋ค ์๋ผ๋๋ฐ ๋ฉฐ์น ์ด ๊ฑธ๋ฆฌ๋์ง๋ฅผ ๋ํ๋ธ ti๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ ti ≤ 1,000,000) www.acmicpc.net ๋์ ํ์ด ์ ์ผ ๋ฆ๊ฒ ๊ฑธ๋ฆฌ๋ ์จ์๋ถํฐ ์ฌ์ผ๋ฉด ๊ฐ์ฅ ๋นจ๋ฆฌ ๋ณด์ฌ์ค ์ ์๋ ๋ ์ง๊ฐ ๋๋ค. import Foundation let n = Int(readLine()!)! var arr = readLine()!.components(separatedBy:" ").map{Int($0)!} arr.sort(by: >) var day = 2..
2022.11.07 -
๋ฐฑ์ค - ๋ฐฐ(Swift)
๋ฐฑ์ค - ๋ฐฐ(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/1092 1092๋ฒ: ๋ฐฐ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. N์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค์๋ ๊ฐ ํฌ๋ ์ธ์ ๋ฌด๊ฒ ์ ํ์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 1,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ์ ์งธ ์ค์๋ ๋ฐ์ค์ ์ M์ด ์ฃผ์ด์ง๋ค. M์ 10,000๋ณด www.acmicpc.net ์ฒ์ ๋์ ํ์ด ์ฒ์์๋ ํฌ๋ ์ธ์ ๊ณ์ํด์ for๋ฌธ์ ๋๋ฉด์ ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํด์ ๋ฐ์ค๋ฅผ ์ฎ๊ธธ ์ ์๋ค๋ฉด ์ฎ๊ธฐ๊ณ ์ฆ๊ฐ์ํค๋ ๋ฐฉ์์ผ๋ก ํ๋ค. ํ์ง๋ง ์ด ๋ฐฉ์์ ํต๊ณผํ ํ์ด์ ๋์ผํ ๋ก์ง์ ๋ฐ๋ฅธ๋ค๊ณ ์๊ฐํ๋๋ฐ ํต๊ณผํ์ง ๋ชปํ๋ค. (ํน์ ์ด์ ๋ฅผ ์๊ณ ๊ณ์๋ฉด ๋๊ธ ๋จ๊ฒจ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค) import Foundation let n = Int(readLine..
2022.11.07 -
์ํ ๋ - ๋ฐฑ์ค(Swift)
์ํ ๋ - ๋ฐฑ์ค(Swift) ๋ฌธ์ ์ค๋ช https://www.acmicpc.net/problem/18310 18310๋ฒ: ์ํ ๋ ์ฒซ์งธ ์ค์ ์ง์ ์ N์ด ์์ฐ์๋ก ์ฃผ์ด์ง๋ค. (1≤N≤200,000) ๋์งธ ์ค์ N์ฑ์ ์ง์ ์์น๊ฐ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๊ตฌ๋ถ๋์ด 1์ด์ 100,000์ดํ์ ์์ฐ์๋ก ์ฃผ์ด์ง๋ค. www.acmicpc.net ๋์ ํ์ด ์ฒ์ ๋ฌธ์ ๋ฅผ ๋ดค์๋ ๋์ถฉ ๊ฐ์ด๋ฐ ์ฏค์ ์์ผ๋ฉด ๋๊ฒ ๋ค๊ณ ์๊ฐํ๊ณ ๊ณต์ฑ ์ ์ฌ๋ฌ๊ฐ์ง ๊ฒฝ์ฐ์ ์๋ฅผ ๊ทธ๋ ธ๋ค. 1) ๊ท ์ผํ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐ์ก์๋ 2) ๊ท ์ผํ์ง ์์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐ์ก์๋ ๋ ๊ฐ์ ๊ฒฝ์ฐ ๋ชจ๋ ๋ฑ ๊ฐ์ด๋ฐ์ ์๋ ๊ฒฝ์ฐ๊ฐ ์ํ ๋๋ฅผ ์ค์นํ์๋ ์ต์๊ฑฐ๋ฆฌ๊ฐ ๋์๋ค. ์์๋ก 1 4 7 10 ๊ฐ์ ๊ฒฝ์ฐ 4๋ 7์ ์ค์น๋ฅผ ํ๋ฉด 12๊ฐ ๋๋ค. ๊ทธ๋ฆฌ๊ณ 1 2 30 80 90 200 ๊ฐ์ ๊ฒฝ์ฐ๋ 3..
2022.11.06