์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ 13

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.3] 43105 ์ •์ˆ˜ ์‚ผ๊ฐํ˜•

๋ฌธ์ œ ํ’€์ด  DP ๋ฌธ์ œ๋‹ค. ํŠธ๋ฆฌ์—์„œ ์ž์‹๋“ค์˜ ๋ˆ„์ ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€๋˜๋Š” ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.DP ์ ํ™”์‹์„ ์•„๋ž˜์™€ ๊ฐ™์ด ์ƒ๊ฐํ–ˆ๋‹ค.{์ž์‹์˜ ํ˜„์žฌ ๊ฐ’ + (์˜ค๋Œ€๊ฐ์„ ์œ„ or ์™ผ๋Œ€๊ฐ์„ ์œ„) ์ค‘ ์ตœ๋Œ“๊ฐ’} ์„ ๊ตฌํ•ด์„œ ๋‹จ๋ง๋…ธ๋“œ์— ๋ˆ„์  ํ•ฉ์„ ๋„ฃ์–ด๋†“๋Š”๋‹ค ์ด ์ ํ™”์‹์œผ๋กœ DP์— ๋ˆ„์ ํ•ฉ์„ ๋„ฃ์–ด๋†“์œผ๋ฉด ๋งˆ์ง€๋ง‰ ๋ฐฐ์—ด์— ์ด ๋ˆ„์ ํ•ฉ์˜ ๊ฒฝ์šฐ๊ฐ€ ์Œ“์ด๋ฏ€๋กœ ๋งˆ์ง€๋ง‰ ๋ฐฐ์—ด ์ค‘ ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•˜๋ฉด ๋‹ต์ด๋‹ค. class Solution { public int solution(int[][] triangle) { int len = triangle.length; int[][] dp = new int[len][len]; dp[0][0] = triangle[0][0]; for (int i=1; i 1. dp ๋ฐฐ์—ด..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.2] 70129 ์ด์ง„ ๋ณ€ํ™˜ ๋ฐ˜๋ณตํ•˜๊ธฐ

๋ฌธ์ œ ํ’€์ด ์ž…๋ ฅ๊ฐ’์—์„œ 0์„ ์ œ๊ฑฐํ•˜๊ณ ->  0 ์ œ๊ฑฐ ํ›„ ๊ธธ์ด๋ฅผ ๋‹ค์‹œ ์ด์ง„๋ณ€ํ™˜-> ์ด์ง„๋ณ€ํ™˜ํ•œ ์ˆ˜์—์„œ ๋‹ค์‹œ 0์„ ์ œ๊ฑฐ-> 0 ์ œ๊ฑฐ ํ›„ ๊ธธ์ด๋ฅผ ๋‹ค์‹œ ์ด์ง„๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์„ ๋ฐ˜๋ณตํ•ด์„œ ์ด์ง„๋ณ€ํ™˜ ๊ฒฐ๊ณผ๊ฐ€ 1์ด ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•ด์•ผํ•œ๋‹ค.์ถœ๋ ฅ๊ฐ’์œผ๋กœ๋Š” [{์ด ๋ฐ˜๋ณต ํšŸ์ˆ˜}, {์ œ๊ฑฐํ•œ 0์˜ ๊ฐœ์ˆ˜}] ๋ฅผ ์ถœ๋ ฅํ•ด์•ผํ•œ๋‹ค. ๋ณ€์ˆ˜ ์„ค๋ช…- len : 0 ์ œ๊ฑฐํ›„ ๊ธธ์ด- zero : ์ œ๊ฑฐํ•œ 0์˜ ๊ฐœ์ˆ˜ ์นด์šดํ„ฐ- count : ๋ฐ˜๋ณต ํšŸ์ˆ˜ ์นด์šดํ„ฐ ํ’€์ด ์ˆœ์„œclass Solution { static int zero = 0; static int count = 0; public int[] solution(String s) { convert(s); int[] answer = {count, zero}; ret..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.2] 12924 ์ˆซ์ž์˜ ํ‘œํ˜„

๋ฌธ์ œ ํ’€์ด ์—ฐ์†๋œ ์ˆซ์ž์˜ ํ•ฉ์ด n์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ๋‹ค.์ฒ˜์Œ์— ์—ฐ์†๋œ ์ˆซ์ž์˜ ํ•ฉ์ด๋‹ˆ๊นŒ ๋“ฑ์ฐจ์ˆ˜์—ด๋กœ ํ’€์–ด์•ผ๊ฒ ๋‹ค.. ๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ณ  ๋ฌธ์ œ๋ฅผ ์ ‘๊ทผํ–ˆ๋‹ค.์ฒซ ๋ฒˆ์งธ ํ’€์ด๊ธฐ๋ณธ ๋ฒ ์ด์Šค๋Š” ์œ„์˜ ๋“ฑ์ฐจ์ˆ˜์—ด ๊ณต์‹์„ ์ƒ๊ฐํ•˜๊ณ  ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค.1. n==n์ธ ๊ฒฝ์šฐ๋ฅผ ๋ฏธ๋ฆฌ ์„ธ์–ด์ฃผ๊ธฐ ์œ„ํ•ด count๋ฅผ 1๋กœ ์ดˆ๊ธฐํ™”ํ•จ2. ์ด์ค‘ for๋ฌธ์œผ๋กœ ์ € ๊ณต์‹์„ ๋งŒ์กฑํ•˜๋Š” a, b ๊ฐ’์ด ์กด์žฌํ•˜๋ฉด count๋ฅผ ๋Š˜๋ ค์คŒ3. for๋ฌธ ๋‹ค ๋Œ๋ฉด count ๋ฐ˜ํ™˜์ด๋ ‡๊ฒŒํ•ด์„œ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ๋‹ค ํ†ต๊ณผ๋๋Š”๋ฐ... ์‹œ๊ฐ„๋ณต์žก๋„ O(n^2)์ด๋ผ ๊ทธ๋Ÿฐ์ง€ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋œธ ใ…œใ…œ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€๋ฉด ๋˜๋Š”๋ฐ ์˜ค๊ธฐ๊ฐ€ ์ƒ๊ฒจ์„œ ๋“ฑ์ฐจ์ˆ˜์—ด ๊ณ ์ง‘ํ•˜๋‹ค๊ฐ€ ์‹œ๊ฐ„ ๋งŽ์ด ๋ฒ„๋ฆฐ ๋ฌธ์ œ...ใ…‹ใ…‹ class Solution { public int solution(int n) { ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.3] 42628 ์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ

๋ฌธ์ œํ’€์ด ์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฌธ์ œ๋กœ, ์ฃผ์–ด์ง„ ๋ช…๋ น์–ด๋“ค์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ์ตœ์ข…์ ์œผ๋กœ ํ์˜ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.1. ๋‘ ๊ฐœ์˜ ์šฐ์„ ์ˆœ์œ„ ํ ์ƒ์„ฑ (์ตœ์†Œํž™, ์ตœ๋Œ€ํž™)- ์ตœ๋Œ€ํž™ ์ •๋ ฌ์€ `Collections.reverseOrder()`๋กœ ํ ์—ญ์ˆœ ์ •๋ ฌํ•˜์—ฌ ์ตœ๋Œ€ํž™์„ ๋งŒ๋“ ๋‹ค.2. ๋ช…๋ น์–ด ๊ทœ์น™๋Œ€๋กœ ์ฒ˜๋ฆฌ- I : min, max ๋‘ ํ์— ๋ชจ๋‘ add ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰- D 1 : ์ตœ๋Œ“๊ฐ’ ์‚ญ์ œ- D -1 : ์ตœ์†Ÿ๊ฐ’ ์‚ญ์ œ3. ํ๊ฐ€ ๋น„์–ด์žˆ์œผ๋ฉด [0, 0] ๋ฐ˜ํ™˜ํ•˜๊ณ , ๋น„์–ด์žˆ์ง€ ์•Š์œผ๋ฉด max.peek()์œผ๋กœ ์ตœ๋Œ“๊ฐ’, min.peek()๋กœ ์ตœ์†Ÿ๊ฐ’ ๋ฐ˜ํ™˜ํ•จ.class Solution{ public int[] solution(String[] operations) { PriorityQueue min..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.2] 12941 ์ตœ์†Ÿ๊ฐ’ ๋งŒ๋“ค๊ธฐ

๋ฌธ์ œํ’€์ด ๋‘ ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ์˜ ๊ณฑ์˜ ๋ˆ„์ ํ•ฉ์ด ์ตœ์†Œ๊ฐ€ ๋˜๋„๋ก ํ•˜๋Š” ๋ฌธ์ œ๋‹ค.๊ฐ ์›์†Œ์˜ ๊ณฑ์˜ ๋ˆ„์ ํ•ฉ์ด ์ตœ์†Œ๊ฐ€ ๋˜๋ ค๋ฉด, ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด๊ณผ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ๋ฅผ ๊ณฑํ•ด์ค€ ํ›„์— ๋ˆ„์ ํ•ฉ์„ ๊ตฌํ•ด์ฃผ๋ฉด ์ตœ์†Ÿ๊ฐ’์ด ๋œ๋‹ค. 1. ์ž๋ฐ”์—์„œ๋Š” int[] ๋ฐฐ์—ด์„ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์ง€ ๋ชปํ•˜๋ฏ€๋กœ, ์ผ๋‹จ ๊ฐ๊ฐ A, B ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ํ•ด์ค€๋‹ค.2. A๋ฐฐ์—ด์€ ์›์†Œ์˜ ์‹œ์ž‘์ธ i ๋ถ€ํ„ฐ, B ๋ฐฐ์—ด์€ ์›์†Œ์˜ ๋์ธ (len-1)-i ๋ถ€ํ„ฐ ์—ญ์ˆœ์œผ๋กœ ์›์†Œ๋ฅผ ๊ณฑํ•ด์ฃผ๊ณ , answer์— ํ•ฉ์„ ๋ˆ„์ ํ•œ๋‹ค.  class Solution{ public int solution(int []A, int []B){ int len = A.length; int answer = 0; ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / ์ž๋ฐ” / Lv.2] 12939 ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’

๋ฌธ์ œ  ์ž๋ฐ” ๊ฐœ๋…Stream API๋ž€?๋žŒ๋‹ค์‹์„ ์ด์šฉํ•œ ๊ธฐ์ˆ  ์ค‘ ํ•˜๋‚˜๋กœ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์กฐ์ž‘ ๋ฐ ๊ฐ€๊ณต, ๋ณ€ํ™˜ํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฐ’์œผ๋กœ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ์ธํ„ฐํŽ˜์ด์ŠคString[] ๋ฐฐ์—ด to Integer[] ๋ฐฐ์—ด : `Arrays.stream(list).mapToInt(Integer::parseInt)`์ตœ๋Œ“๊ฐ’, ์ตœ์†Ÿ๊ฐ’ : `Arrays.stream(list).max().getAsInt()`, `Arrays.stream(list).min().getAsInt()`ํ’€์ด String ๋ฐฐ์—ด์„ Integer ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ• ๋•Œ Stream API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ’€์ดํ•˜์˜€๋‹ค.1. String ์ž…๋ ฅ๊ฐ’์„ split์„ ์ด์šฉํ•ด ๊ณต๋ฐฑ ๊ธฐ์ค€์œผ๋กœ String ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ธฐ2. `Arrays.strea(list).mapToInt(Integer::parseIn..

[๋ฐฑ์ค€ ํŒŒ์ด์ฌ] ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ - Lv6. ์‹ฌํ™” 1

# 25083 ์ƒˆ์‹น print(" ,r'\"7") print("r`-_ ,' ,/") print(" \\. \". L_r'") print(" `~\\/") print(" |") print(" |") - " ์ถœ๋ ฅ : \" - \ ์ถœ๋ ฅ : \\ # 3003 ํ‚น, ํ€ธ, ๋ฃฉ, ๋น„์ˆ, ๋‚˜์ดํŠธ, ํฐ A = list(map(int, input().split())) print(1-A[0], 1-A[1], 2-A[2], 2-A[3], 2-A[4], 8-A[5]) # 2444 ๋ณ„์ฐ๊ธฐ-7 n = int(input()) for i in range(1, n+1): print(' '*(n-i)+'*'*(2*i-1)) for i in range(n-1, 0, -1): print(' '*(n-i)+'*'*(2*i-1)) - ์—ฐ๊ฒฐํ•ด์„œ..

[๋ฐฑ์ค€ ํŒŒ์ด์ฌ] ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ - Lv5.๋ฌธ์ž์—ด

# 27866 ๋ฌธ์ž์™€ ๋ฌธ์ž์—ด #๋‹จ์–ด S์™€ ์ •์ˆ˜ i ์ฃผ์–ด์ง #S์˜ i๋ฒˆ์งธ ๊ธ€์ž ์ถœ๋ ฅ S = input() i = int(input()) print(S[i-1]) # 2743 ๋‹จ์–ด ๊ธธ์ด ์žฌ๊ธฐ #์•ŒํŒŒ๋ฒณ ์ž…๋ ฅ๋ฐ›์•„ ๊ธธ์ด ์ถœ๋ ฅ x = input() print(len(x)) # 9086 ๋ฌธ์ž์—ด #๋ฌธ์ž์—ด ์ž…๋ ฅ #๋ฌธ์ž์—ด ์ฒซ ๊ธ€์ž์™€ ๋งˆ์ง€๋ง‰ ๊ธ€์ž ์ถœ๋ ฅ T=int(input()) #ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ๊ฐœ์ˆ˜ for _ in range (T) : x = input() print(x[0]+x[-1]) #x[-1]์€ ๋งˆ์ง€๋ง‰ ๊ธ€์ž - x[-1] : ๋งˆ์ง€๋ง‰ ๊ธ€์ž # 11654 ์•„์Šคํ‚ค ์ฝ”๋“œ #์ฃผ์–ด์ง„ ๊ธ€์ž์˜ ์•„์Šคํ‚ค์ฝ”๋“œ๊ฐ’ ์ถœ๋ ฅ x = input() print(ord(x)) - ord() : ์•„์Šคํ‚ค ์ฝ”๋“œ๊ฐ’ ๋ฆฌํ„ด ํ•จ์ˆ˜ - chr() : ์•„์Šคํ‚ค ์ฝ”๋“œ๊ฐ’..

[ํŒŒ์ด์ฌ ๊ฒŒ์ž„] Chimp Memory Game

chimp memory game ๊ฒฉ์ž : 5 rows(ํ–‰), 9 columns(์—ด) start ๋ฒ„ํŠผ 6 numbers (์ˆœ์ฐจ ์ฆ๊ฐ€) ๊ฒฉ์ž์— ์ˆซ์ž ๋žœ๋ค ์œ„์น˜ํ•˜๊ธฐ Hide Numbers : 1. Display Time, 2. First Number ์‹œ๊ฐ„์ด ์ง€๋‚œ ํ›„์— ์ˆซ์ž ์ˆจ๊ฒจ์ง 1์„ ๋ˆ„๋ฅด๋ฉด ๋‚˜๋จธ์ง€ ์ˆซ์ž ์ˆจ๊ฒจ์ง Correct → Next Level Wrong → Game Over ํ”„๋ ˆ์ž„ : 1_frame ๊ฐ€๋กœ 1280, ์„ธ๋กœ 720 import pygame #์ดˆ๊ธฐํ™” pygame.init() screen_width = 1280 #๊ฐ€๋กœํฌ๊ธฐ screen_height = 720 #์„ธ๋กœํฌ๊ธฐ screen = pygame.display.set_mode((screen_width, screen_height)) pygame.d..

[๋ฐฑ์ค€ ํŒŒ์ด์ฌ] ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ - Lv4. 1์ฐจ์› ๋ฐฐ์—ด

# 10807 ๊ฐœ์ˆ˜ ์„ธ๊ธฐ N=int(input()) x = list(map(int,input().split())) v = int(input()) print(x.count(v)) - x.count(v)๋กœ x๋ฆฌ์ŠคํŠธ ์•ˆ์— v๊ฐ€ ๋ช‡ ๊ฐœ ๋“ค์–ด๊ฐ€์žˆ๋Š”์ง€ ํ™•์ธ๊ฐ€๋Šฅ # 10871 X๋ณด๋‹ค ์ž‘์€ ์ˆ˜ N,X = map(int,input().split()) A = list(map(int, input().split())) for i in range(N) : if A[i] 42๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€ #์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ’ ๋ช‡ ๊ฐœ? A=[0]*10 for i in range(10) : x = int(input()) A[i] = (x % 42) B = set(A) print(len(B)) - ๋ฆฌ์ŠคํŠธ ์ž…๋ ฅ ๋ฐ›๊ณ  ๋ฆฌ์ŠคํŠธ๋ฅผ ์ง‘ํ•ฉ์œผ๋กœ ๋ฐ”๊ฟ”์„œ ์ค‘๋ณต๋˜๋Š” ์ˆ˜ ..