728x90

๐Ÿ“ Coding Test Study 108

[Baekjoon][C++] 9095๋ฒˆ 1, 2, 3 ๋”ํ•˜๊ธฐ ๋ฌธ์ œ์„ค๋ช… ๋ฐ ์ฝ”๋“œ

โ–ท ๋ฌธ์ œ์„ค๋ช… 9095๋ฒˆ: 1, 2, 3 ๋”ํ•˜๊ธฐ ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค, n์„ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์ •์ˆ˜ n์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, n์„ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฌธ์ œ ์ด ๋•Œ, n์˜ ๋ฒ”์œ„๋Š” 1 T; for (int t = 0; t > num; cout

[Baekjoon][C++] 14500๋ฒˆ ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ ๋ฌธ์ œ์„ค๋ช… ๋ฐ ์ฝ”๋“œ

14500๋ฒˆ: ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ ํด๋ฆฌ์˜ค๋ฏธ๋…ธ๋ž€ ํฌ๊ธฐ๊ฐ€ 1×1์ธ ์ •์‚ฌ๊ฐํ˜•์„ ์—ฌ๋Ÿฌ ๊ฐœ ์ด์–ด์„œ ๋ถ™์ธ ๋„ํ˜•์ด๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์€ ์„œ๋กœ ๊ฒน์น˜๋ฉด ์•ˆ ๋œ๋‹ค. ๋„ํ˜•์€ ๋ชจ๋‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์˜ ๋ณ€ www.acmicpc.net โ–ท ๋ฌธ์ œ์„ค๋ช… NxM ํฌ๊ธฐ์˜ ์ข…์ด ์œ„์— ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ๋ฅผ ํ•˜๋‚˜ ๋†“์•„์„œ ๋†“์ธ ์นธ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ˆ˜์˜ ํ•ฉ์„ ์ตœ๋Œ€๋กœ ํ•˜๋Š” ๋ฌธ์ œ N, M์˜ ๋ฒ”์œ„๋Š” 4 > N >> M; for (int i = 0; i > arr[i][j]; } } StartCalculation(arr, N, M); } void StartCalculation(int arr[SIZE][SIZE], int N, int M) { int ..

[Baekjoon][C++] 1476๋ฒˆ ๋‚ ์งœ๊ณ„์‚ฐ ๋ฌธ์ œ์„ค๋ช… ๋ฐ ์ฝ”๋“œ

1476๋ฒˆ: ๋‚ ์งœ ๊ณ„์‚ฐ ์ค€๊ทœ๊ฐ€ ์‚ฌ๋Š” ๋‚˜๋ผ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์—ฐ๋„์™€ ๋‹ค๋ฅธ ๋ฐฉ์‹์„ ์ด์šฉํ•œ๋‹ค. ์ค€๊ทœ๊ฐ€ ์‚ฌ๋Š” ๋‚˜๋ผ์—์„œ๋Š” ์ˆ˜ 3๊ฐœ๋ฅผ ์ด์šฉํ•ด์„œ ์—ฐ๋„๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๊ฐ๊ฐ์˜ ์ˆ˜๋Š” ์ง€๊ตฌ, ํƒœ์–‘, ๊ทธ๋ฆฌ๊ณ  ๋‹ฌ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ง€๊ตฌ๋ฅผ ๋‚˜ํƒ€ www.acmicpc.net โ–ท ๋ฌธ์ œ์„ค๋ช… ์ค€๊ทœ๊ฐ€ ์‚ฌ๋Š” ๋‚˜๋ผ๋Š” ์—ฐ๋„๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ E, S, M ์„ธ ๋ฌธ์ž๋กœ ํ‘œํ˜„ํ•œ๋‹ค. ๊ฐ๊ฐ์˜ ๋ฌธ์ž๊ฐ€ ๊ฐ€์ง€๋Š” ๋ฒ”์œ„๋Š” 1 ≤ E ≤ 15, 1 ≤ S ≤ 28, 1 ≤ M ≤ 19 ์ด๋‹ค. E, S, M์ด ์ฃผ์–ด์งˆ ๋•Œ, E S M์œผ๋กœ ํ‘œ์‹œ๋˜๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ์—ฐ๋„๋ฅผ ์ถœ๋ ฅํ•˜์ž. โ–ท ๋ฌธ์ œํ’€์ด ์ด ๋ฌธ์ œ์˜ ๊ฒฝ์šฐ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋…„๋„๋Š” 15 * 28 * 19 = 7980๋…„๊นŒ์ง€ ์ด๋ฏ€๋กœ ๋ธŒ๋ฃจํŠธํฌ์Šค ๋ฐฉ๋ฒ•์œผ๋กœ 1๋…„ ๋ถ€ํ„ฐ 7980๋…„๊นŒ์ง€ ๊ตฌํ•˜๋‹ค๊ฐ€ ์ •๋‹ต๊ณผ ๊ฐ™์•„์ง€๋Š” ์ˆœ๊ฐ„์„ ์ฐพ์œผ๋ฉด ๋œ๋‹ค. ์ด ๋•Œ, ๋ฌธ์ œ์—..

[Baekjoon][C++] 2309๋ฒˆ ์ผ๊ณฑ๋‚œ์Ÿ์ด ๋ฌธ์ œ์„ค๋ช… ๋ฐ ์ฝ”๋“œ

2309๋ฒˆ: ์ผ๊ณฑ ๋‚œ์Ÿ์ด ์•„ํ™‰ ๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๋‚œ์Ÿ์ด๋“ค์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ํ‚ค๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜์ด๋ฉฐ, ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉฐ, ๊ฐ€๋Šฅํ•œ ์ •๋‹ต์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€์ธ ๊ฒฝ์šฐ์—๋Š” ์•„๋ฌด๊ฑฐ๋‚˜ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net โ–ท ๋ฌธ์ œ์„ค๋ช… ์ฐ ์ผ๊ณฑ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ! ์ฆ‰, ๊ฐ€์งœ ๋‚œ์Ÿ์ด 2๋ช…์ด ํฌํ•จ๋œ 9๋ช…์˜ ๋‚œ์Ÿ์ด ์ค‘์—์„œ ์ฐ ์ผ๊ณฑ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ์•„์•ผ ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ผ๊ณฑ๋‚œ์Ÿ์ด์˜ ํ‚ค๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. โ–ท ๋ฌธ์ œํ’€์ด 1) ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค์˜ ํ•ฉ์ด 100์ธ ๊ฒƒ๊ณผ ์ˆœ์—ด์˜ ์„ฑ์งˆ์„ ์ด์šฉํ•œ๋‹ค. 2) 9๋ช… ์ค‘, 7๋ช…์„ ์„ ํƒํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์•„๋‹Œ 2๋ช…์˜ ๋‚œ์Ÿ์ด๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๊ตฌํ•œ๋‹ค.(9C7 = 9C2) 3) ์ „์ฒด ํ‚ค์˜ ํ•ฉ์—์„œ 2๋ช… ํ‚ค๋ฅผ ๋นผ๋ณธ๋‹ค. 4) ๊ทธ ๊ฐ’์ด 100์ด ๋œ๋‹ค๋ฉด ๊ทธ ๋‘˜์ด ๊ฐ€์งœ ๋‚œ์Ÿ์ด๋“ค์ด๋‹ค. โ–ท ์‹œ..

[Algorithm] ๋ธŒ๋ฃจํŠธ ํฌ์Šค(Brute Force)

โ–ท ๋ถ€๋ฃจํŠธ ํฌ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€? : ์•„๋ฌป๋”ฐ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋‹ค ๊ณ„์‚ฐํ•ด๋ณด๋Š” ๊ฒƒ. : ์ˆซ์ž๊ฐ€ ์ปค์งˆ ์ˆ˜๋ก ๊ณ„์‚ฐ ์‹œ๊ฐ„์ด ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•จ. โ–ท ์˜ˆ์‹œ 4์ž๋ฆฌ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ’€์–ด์•ผ ํ•  ๋•Œ์˜ 0000~9999์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜์ธ 10,000๊ฐ€์ง€๋ฅผ ๋‹ค ๊ณ„์‚ฐํ•ด๋ณด๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. โ–ท ๊ด€๋ จ๋œ ๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ : 2309๋ฒˆ ์ผ๊ณฑ ๋‚œ์Ÿ์ด, 1476๋ฒˆ ๋‚ ์งœ ๊ณ„์‚ฐ, 14500๋ฒˆ ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ 2309๋ฒˆ: ์ผ๊ณฑ ๋‚œ์Ÿ์ด ์•„ํ™‰ ๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๋‚œ์Ÿ์ด๋“ค์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ํ‚ค๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜์ด๋ฉฐ, ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉฐ, ๊ฐ€๋Šฅํ•œ ์ •๋‹ต์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€์ธ ๊ฒฝ์šฐ์—๋Š” ์•„๋ฌด๊ฑฐ๋‚˜ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net 1476๋ฒˆ: ๋‚ ์งœ ๊ณ„์‚ฐ ์ค€๊ทœ๊ฐ€ ์‚ฌ๋Š” ๋‚˜๋ผ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์—ฐ๋„์™€ ๋‹ค๋ฅธ ๋ฐฉ์‹์„ ์ด์šฉํ•œ๋‹ค. ์ค€๊ทœ๊ฐ€ ์‚ฌ๋Š” ๋‚˜๋ผ์—์„œ๋Š”..

[Math&Algorithm] ์†Œ์ˆ˜?

โ–ท์†Œ์ˆ˜๋ž€? : ์•ฝ์ˆ˜๊ฐ€ 1๊ณผ ์ž๊ธฐ ์ž์‹  ๋ฐ–์— ์—†๋Š” ์ˆ˜ : 2๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , N-1๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜ ์†Œ์ˆ˜์˜ ์˜ˆ) 2, 3, 5, 7, 11, 13, 17, 19, 23, ... โ–ท์†Œ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•? โ‘  ์ž์—ฐ์ˆ˜ N์˜ ๊ฐ€์žฅ ํฐ ์•ฝ์ˆ˜๋Š” N/2๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฏ€๋กœ 2๋ถ€ํ„ฐ N/2๊นŒ์ง€ ๋‚˜๋ˆ ๋ณด๊ธฐ. โ‘ก ์ž์—ฐ์ˆ˜ N์„ ๋ฃจํŠธ N๊นŒ์ง€ ๋‚˜๋ˆ ๋ณด๊ธฐ. Why? N์ด ์†Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด N=a X b ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. (a์™€ b๋Š” ์ž์—ฐ์ˆ˜) (์ด ๋•Œ, a์™€ b๋Š” a b ๋ผ๋ฉด ๋‘ ์ˆ˜๋ฅผ ๋ฐ”๊ฟ”์„œ ํ•ญ์ƒ a

[Math&Algorithm] ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜? ์ตœ๋Œ€๊ณต๋ฐฐ์ˆ˜?

โ–ท์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋ž€? : GCD(Greatest Common Divisor) : ๋‘ ์ˆ˜ A์™€ B์˜ ๊ณตํ†ต๋œ ์•ฝ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ ์ •์ˆ˜ โ–ท๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•? โ‘  2๋ถ€ํ„ฐ min(A, B)๊นŒ์ง€ ๋ชจ๋“  ์ •์ˆ˜๋กœ ๋‚˜๋ˆ ์„œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ด ๋˜๋Š” ์ตœ๋Œ€ ์ •์ˆ˜ ์ฐพ๊ธฐ. โ‘ก ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•(Euclidean algorithm)์œผ๋กœ ์ฐพ๊ธฐ. : a๋ฅผ b๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ r ์ด๋ผ๊ณ  ํ–ˆ์„ ๋•Œ, GCD(a, b) = GCD(b, r) ์ด ์„ฑ๋ฆฝํ•œ๋‹ค. → ์žฌ๊ท€๋กœ ๊ตฌํ˜„ ๊ฐ€๋Šฅ : r์ด 0์ด๋ฉด ๊ทธ ๋•Œ์˜ b๊ฐ€ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜ ์ด๋‹ค. ex) GCD(16, 12) = GCD(12, 4) = GCD(4, 0) = 4 → GCD(a, b) = GCD(b, a%b) ๋กœ ํ‘œํ˜„ ๋จ โ–ท์ตœ๋Œ€๊ณต๋ฐฐ์ˆ˜๋ž€? : LCM(Least Common Multiple) : ๋‘ ์ˆ˜์˜ ๊ณตํ†ต๋œ ๋ฐฐ์ˆ˜ ์ค‘์—..

C++ Template์ด๋ž€? ์ ์šฉ ๋ฐฉ๋ฒ•์€?

โ–ท C++ Template์ด๋ž€? : int, double, long ๋“ฑ์˜ ์ž๋ฃŒํ˜•์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ  ๊ณตํ†ต๋œ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด ๋†“๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ •์˜ํ•ด๋‘๋Š” ๊ฒƒ โ–ท C++ Document์—์„œ์˜ ์ •์˜ #include template const T& min (const T& a, const T& b) โ–ท ์‚ฌ์šฉ๋ฒ• #include #include using namespace std; template T sum(T a, T b){ return a + b; } int main(){ cout

728x90