๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS/JAVA

    [JAVA] ๋ฐฑ์ค€ 10845๋ฒˆ ใ€ํใ€‘

    ์ด๋ฒˆ ๋ฌธ์ œ๋Š”, ๋ฌธ์ œ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ํ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ €๋ฒˆ์—๋Š” ์Šคํƒ์˜ ๊ธฐ๋Šฅ์„ ์ง์ ‘ ๊ตฌํ˜„ํ•˜์˜€๋Š”๋ฐ, ํ์™€ ์Šคํƒ์˜ ์ฐจ์ด์ ์€ ํ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋จผ์ € ๋“ค์–ด์˜จ ์ˆœ์„œ๋Œ€๋กœ ์ถ”์ถœ์ด ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์Šคํƒ์˜ pop ์€ ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋“ค์–ด๊ฐ„ ๋ฐ์ดํ„ฐ๊ฐ’์ด ๋‚˜์˜ค๋Š” ๊ฒƒ์ด๊ณ  ํ์˜ pop ์€ ๊ฐ€์žฅ ๋จผ์ € ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ ๊ฐ’์ด ๋‚˜์˜ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด ๋ฌธ์ œ ์—ญ์‹œ ๋ช…๋ น ์ˆ˜๊ฐ€ 10000๊ฐœ ์ด๋ฏ€๋กœ 10001 ํฌ๊ธฐ์˜ int ๋ฐฐ์—ด์„ ๋จผ์ € ์ƒ์„ฑํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  stack ๊ตฌํ˜„ ๋ฌธ์ œ์™€ ์ฐจ์ด์ ์€, index๋ฅผ first index ์™€ last index 2๊ฐœ๋ฅผ ์กฐ์ ˆํ•˜๋ฉด์„œ ๊ตฌํ˜„ํ•ด์•ผํ•œ๋‹ค. first index ์™€ last index๋Š” 0์—์„œ ์‹œ์ž‘ํ•˜๊ณ , pushํ• ๋•Œ๋งˆ๋‹ค last index ๊ฐ’์ด ์ด๋™ํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ฑ„์›Œ์ง€๊ณ  pop ํ• ๋•Œ๋งˆ๋‹ค first index๊ฐ€ ์ด๋™ํ•˜๋ฉด..

    [JAVA] ๋ฐฑ์ค€ 10799๋ฒˆ ใ€์‡ ๋ง‰๋Œ€๊ธฐใ€‘

    ์ด ๋ฌธ์ œ๋Š” Stack ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•ด์„œ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ํฌ์ธํŠธ๋Š”, ๋‚˜๋ˆ ์ง„ ์‡  ๋ง‰๋Œ€๊ธฐ๋ฅผ ์–ด๋–ค ์กฐ๊ฑด์ผ ๋•Œ, ์–ด๋–ค ๊ฐ’์„ ๋”ํ•ด์•ผํ•˜๋Š”์ง€ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฐจ๊ทผ์ฐจ๊ทผ ํ•˜๋‚˜์”ฉ ๊ทธ๋ ค๋ณด๋ฉด, ๋ฐ”๋กœ ์ดํ•ด๊ฐ€ ๋œ๋‹ค. ์œ„์™€ ๊ฐ™์€ ์ƒํ™ฉ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ• ๋•Œ, '(' ๊ฐ€ ์žˆ์œผ๋ฉด ์Šคํƒ์— '(' ๋ฅผ ๊ณ„์† push ํ•ด์ฃผ๊ณ  ')' ๊ฐ€ ๋‚˜์˜ฌ๋•Œ pop์„ ํ•ด์ฃผ๊ณ  ๋‚˜์„œ ์กฐ๊ฑด์„ ๋”ฐ์ ธ๋ด์•ผ ํ•œ๋‹ค. ์ฒซ ๋ฒˆ์งธ, ')' ๋ฅผ ๋งŒ๋‚ฌ๋‹ค. ๋ฐ”๋กœ ์ด์ „ ๋ฌธ์ž๊ฐ€ '(' ์ด๋ฏ€๋กœ ๋ ˆ์ด์ €์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ ')' ๋ฅผ ๋งŒ๋‚ฌ์„ ๋•Œ, ์ด์ „ ๋ฌธ์ž๊ฐ€ ')' ๋ผ๋ฉด ๋ ˆ์ด์ €๊ฐ€ ์•„๋‹ ๊ฒƒ์ด๋‹ค. ์•„๋ฌดํŠผ, ๋ ˆ์ด์ €๊ฐ€ ๋ฐœ์‚ฌ๋˜๊ณ , ๋‚จ์€ ๋‘๊ฐœ์˜ '(' ์˜ ๋์€ ์•Œ ์ˆ˜ ์—†์ง€๋งŒ, ํ™•์‹คํ•œ ๊ฑด ํ˜„์žฌ ์Šคํƒ์˜ ์‚ฌ์ด์ฆˆ ๋งŒํผ์˜ ์กฐ๊ฐ์ด ์ƒ๊ธด๋‹ค๋Š” ์‚ฌ์‹ค์ด๋‹ค. ์ฆ‰, result = result + stack.size(); ๊ฐ€ ..

    [JAVA] ๋ฐฑ์ค€ 9012๋ฒˆ ใ€๊ด„ํ˜ธใ€‘

    ์œ„ ๋ฌธ์ œ๋Š”, Stack ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€์–ด๋„ ๋œ๋‹ค. ๊ทผ๋ฐ, ๋ฌธ์ œ๋ฅผ ์ž˜ ์ดํ•ดํ•˜๊ณ , Stack ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ž˜ ์•Œ ๊ณ  ์žˆ์œผ๋ฉด ๊ตณ์ด Stack์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ํ’€๋ฆฐ๋‹ค. ๋‚˜๊ฐ™์€ ๊ฒฝ์šฐ๋Š” Stack์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค...ใ…Ž ๋จผ์ € VPS ๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด์€ ๊ด„ํ˜ธ๊ฐ€ ์ง์„ ์ด๋ค„์•ผ ํ•˜๊ณ , ๊ฐ์Œ€ ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ๋กœ ์ž…๋ ฅ๋˜์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทœ์น™ 1. [ () () ( ] ์˜ ๊ฒฝ์šฐ ๊ด„ํ˜ธ๊ฐ€ ์ง์„ ์ด๋ฃจ์ง€ ๋ชปํ•˜๋ฏ€๋กœ VPS๊ฐ€ ์•„๋‹ˆ๋‹ค. ๊ทœ์น™ 2. [ () () )( ] ์˜ ๊ฒฝ์šฐ ๊ด„ํ˜ธ์˜ ๊ฐฏ์ˆ˜๋Š” ์ง์„ ์ด๋ฃจ์ง€๋งŒ, )( ๊ฐ€ ๊ฐ์Œ€ ์ˆ˜ ์—†๋Š” ํ˜•ํƒœ์ด๋ฏ€๋กœ VPS ๊ฐ€ ์•„๋‹ˆ๋‹ค. ์ด ๊ทœ์น™์„ ์ƒ๊ฐํ•ด์„œ, ์ดˆ๊ธฐ๊ฐ’ 0์œผ๋กœ ์ง€์ •ํ•œ ๋ณ€์ˆ˜๋ฅผ, " ( " ๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด +1 ์„ ํ•˜๊ณ  " ) " ๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด -1์„ ํ•˜๋„๋ก ํ•˜๊ณ  ์ตœ์ข… ๊ฐ’์ด 0์ด ๋˜๋ฉด ๊ด„ํ˜ธ๊ฐ€ ์ง์„ ์ด..

    [JAVA] ๋ฐฑ์ค€ 10828๋ฒˆ ใ€์Šคํƒใ€‘

    ๋ฐฑ์—”๋“œ ์Šค์ฟจ์—์„œ ํ•œ๋ฒˆ ํ–ˆ์—ˆ๋˜, ์Šคํƒ ๊ตฌํ˜„ํ•˜๊ธฐ ๋ฌธ์ œ์˜€๋‹ค. ์Šคํƒ์ด ์–ด๋–ค ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์ธ์ง€ ์•Œ๋ฉด, ๋” ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ชฐ๋ผ๋„ ์œ„ ์„ค๋ช…์„ ๋ณด๊ณ  ์œ„ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋งค์„œ๋“œ๋ฅผ ๋งŒ๋“ค๋ฉด ์ถฉ๋ถ„ํžˆ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๋จผ์ €, ๋ช…๋ น์–ด ์ˆ˜๊ฐ€ 10000๊ฐœ ์ฃผ์–ด์ง€๋ฏ€๋กœ, ๋ชจ๋“  ๋ช…๋ น์–ด๊ฐ€ push์ธ ๊ฒฝ์šฐ์—๋„ ๋ฐ์ดํ„ฐ ๊ณต๊ฐ„์€ 10000๊ฐœ๋ฉด ์ถฉ๋ถ„ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํด๋ž˜์Šค ๋ณ€์ˆ˜๋กœ index = -1, 10001 ํฌ๊ธฐ์˜ int ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  5๊ฐœ์˜ static ๋ฉ”์„œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. push ์˜ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ๋งŒํ•˜๋ฉด ๋˜๋ฏ€๋กœ, index๋ฅผ ์ „์œ„์—ฐ์‚ฐ์ž๋กœ 1 ์ฆ๊ฐ€์‹œ์ผœ์ค€ ํ›„ ๋ฐฐ์—ด์— ์ž…๋ ฅํ•˜์˜€๋‹ค. pop์€ index๊ฐ€ -1์„ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์œผ๋ฉด ์Šคํƒ์ด ๋น„์–ด์žˆ๋‹ค๋Š” ์˜๋ฏธ์ด๋ฏ€๋กœ ์กฐ๊ฑด์‹์„ ํ™œ์šฉํ•ด index๊ฐ€ -1์ธ ๊ฒฝ์šฐ -1์„ ์ถœ๋ ฅํ•˜๊ฒŒ ํ•˜์˜€๊ณ , ๊ทธ ์™ธ๋Š”,..

    [JAVA] ๋ฐฑ์ค€ 11004๋ฒˆ ใ€K๋ฒˆ์งธ ์ˆ˜ใ€‘

    ์ด ๋ฌธ์ œ๋Š”, BufferedReader ๋กœ ์ž…๋ ฅ ๋ฐ›๊ณ , sort() ๋ฉ”์„œ๋“œ๋ฅผ ์“ฐ๋ฉด ํ•ด๊ฒฐ๋˜๊ธด ํ•˜์ง€๋งŒ, ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์œ ํ˜• ํŠน์„ฑ์ƒ, ์ •๋ ฌ์„ ๊ตฌํ˜„ํ•˜๊ฒŒ๋” ์„ค๊ณ„ํ•ด๋†จ์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐ์ด ๋“ค๊ธฐ๋„ ํ–ˆ๊ณ , ์†๋„๋„ ๋Š๋ฆฐ ๊ฒƒ ๊ฐ™์•„ ์ฐพ์•„๋ณด๋‹ˆ Quick Sort ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด์„œ ํ‘ธ๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋งŽ์•˜๋‹ค. double pivot quick sort ๋ผ๋Š” quick sort ์˜ ๋‹ค๋ฅธ ๋ฒ„์ „๋„ ์žˆ์—ˆ์ง€๋งŒ, Quick sort ์ž์ฒด๋ฅผ ์ฒ˜์Œ ์ ‘ํ•ด๋ด์„œ, ์ผ๋‹จ Quick Sort ๋ฅผ ๊ณต๋ถ€ํ•ด๋ณด๊ณ  ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์ œ์ถœํ•˜์˜€๋‹ค. ์˜ค๋ฆ„์ฐจ์ˆœ ๊ธฐ์ค€์œผ๋กœ ์„ค๋ช…ํ•ด๋ณด๊ฒ ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๋ฉด, ๊ธฐ์ค€ ๊ฐ’์„ ํ•˜๋‚˜ ์ •ํ•˜๊ณ , start index 0์—์„œ๋ถ€ํ„ฐ ๊ธฐ์ค€๊ฐ’๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ’์„ ๋ฐœ๊ฒฌํ•˜๊ณ , end index ๋์—์„œ๋ถ€ํ„ฐ ๊ธฐ์ค€๊ฐ’๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ๊ฐ’์„ ๋ฐœ๊ฒฌํ•  ์‹œ, ๋‘์ˆ˜์˜ ์œ„์น˜๋ฅผ ..

    [JAVA] ๋ฐฑ์ค€ 11652๋ฒˆ ใ€์นด๋“œใ€‘

    ์ตœ๊ทผ์—, Map ์‚ฌ์šฉํ•ด์„œ ์นด์šดํŒ…ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ๋งŽ์ด ์ž‘์„ฑํ•ด๋ดค๋˜๊ฒŒ, ์ด ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๋ฐ ๋„์›€์„ ์ฃผ์—ˆ๋‹ค. ํ™•์‹คํžˆ, ์—ฌ๋Ÿฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ’€์–ด๋ณด๋Š”๊ฒŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋‹ค์–‘ํ•œ ๋ฌธ๋ฒ•๋“ค์„ ๋ณต์Šตํ•˜๊ณ  ๋ฐฐ์šฐ๋Š”๋ฐ ๋„์›€์ด ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์•„๋ฌดํŠผ! ์ˆ˜์˜ ๋ฒ”์œ„๊ฐ€ ํฌ๋ฏ€๋กœ, Map map์˜ ํ‚ค ๊ฐ’์œผ๋กœ ์ž…๋ ฅ๋˜๋Š” ์ˆ˜๋ฅผ ๊ธฐ๋กํ•  ๊ฒƒ์ด๊ณ , integer ์—๋Š” ํšŸ์ˆ˜๋ฅผ ์…€ ๊ฒƒ์ด๋‹ค. Map ์นด์šดํŒ… ์ž์ฒด๋Š” ํฌ๊ฒŒ ์–ด๋ ค์šด ๋ถ€๋ถ„์€ ์—†์ง€๋งŒ, ๊ฐ€์žฅ ๋งŽ์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ •์ˆ˜๊ฐ€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๋ผ๋ฉด ์ž‘์€ ๊ฒƒ์„ ์ถœ๋ ฅํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ด ๋ถ€๋ถ„ ์กฐ๊ฑด์‹์„ ์ž‘์„ฑํ•  ๋•Œ, ์ฃผ์˜ํ•ด์•ผํ•œ๋‹ค. maxTime์„ 0์œผ๋กœ ์ดˆ๊ธฐํ™” ์‹œํ‚ค๊ณ , maxTime ๋ณด๋‹ค ํฐ ํšŸ์ˆ˜๋ฅผ ๊ฐ€์ง„ key ๊ฐ’์ด ์กด์žฌํ•˜๋ฉด, maxKey์™€ maxTime์„ ์—…๋ฐ์ดํŠธ ํ•ด์ค€๋‹ค. ๋งŒ์•ฝ, ์–ด๋–ค ํ‚ค์˜ ํšŸ์ˆ˜๊ฐ€, ์ด๋ฏธ ๋“ฑ๋ก๋œ maxTime๊ณผ ๋™์ผํ•˜๋‹ค๋ฉด..

    [JAVA] ๋ฐฑ์ค€ 10989๋ฒˆ ใ€์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 3ใ€‘

    ๋ฌธ์ œ ์ž์ฒด๋Š” ํ‰๋ฒ”ํ•œ ์˜ค๋ฆ„์ฐจ์ˆœ ๋ฌธ์ œ์ด์ง€๋งŒ, ๋ฉ”๋ชจ๋ฆฌ์™€ ์‹œ๊ฐ„ ์ œํ•œ์ด ๊นŒ๋‹ค๋กœ์›Œ์„œ ๊ณฐ๊ณฐํžˆ ์ƒ๊ฐํ•ด๋ณด๊ณ  ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ดค๋‹ค. ์š”์ฆ˜, ์ •๋ ฌ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋ฉด์„œ StringBuilder ์˜ ์œ„๋Œ€ํ•จ์„ ๋Š๋ผ๊ณ  ์žˆ์–ด์„œ, StringBuilder ๋ฅผ ์ด์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด์•˜๋‹ค. ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. StringBuilder ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์„œ, ์ž…๋ ฅ๊ฐ’์ด 1~10000์ด๋ผ๊ณ  ํ–ˆ์œผ๋ฏ€๋กœ, ์ž…๋ ฅ๋˜๋Š” ๊ฐ’์„ ์ธ๋ฑ์Šค๋กœ ์ง€์ •ํ•˜๊ณ  ๊ทธ ์ธ๋ฑ์Šค ๊ฐ’์— "\n" ์„ ์ถ”๊ฐ€ํ•ด์„œ ๋ฌธ์ž์—ด์„ append ํ•ด์ค€ ํ›„ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ์ฐธ๊ณ ๋กœ String str ์„ ๋ฃจํ”„ ์•ˆ์—์„œ ์„ ์–ธํ•  ๊ฒฝ์šฐ, ๋ฉ”๋ชจ๋ฆฌ ์ดˆ๊ณผ๊ฐ€ ์ผ์–ด๋‚  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ฃผ์˜ํ•ด์•ผํ•œ๋‹ค. import java.io.BufferedReader; import java.io.IOException; import java.io.Input..

    [JAVA] ๋ฐฑ์ค€ 10825๋ฒˆ ใ€๊ตญ์˜์ˆ˜ใ€‘

    ์ด์ œ, ์ •๋ ฌ ๋ฌธ์ œ๋ฅผ ๋žŒ๋‹ค์‹์„ ์‚ฌ์šฉํ•ด์„œ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์™„์ „ํžˆ ํ„ฐ๋“ํ•œ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ , ์ •๋ ฌ ๋ฌธ์ œ๋ฅผ ํ’€๋•Œ๋งˆ๋‹ค StringBuilder๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์˜ ์—„์ฒญ๋‚œ ํšจ๊ณผ๋ฅผ ๋Š๋ผ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์›ฌ๋งŒํ•˜๋ฉด StringBuilder๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ๊ฒ ๋‹ค. ใ…Žใ…Ž for each๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ println ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ StringBuilder์— ์Œ“์•„๋‘๊ณ  ํ•œ๋ฒˆ์— ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ• ์†๋„๊ฐ€ ๊ฑฐ์˜ 2๋ฐฐ ์ฐจ์ด ๋‚œ๋‹ค...ใ…Žใ…Ž ์•„๋ฌดํŠผ ์ด ๋ฌธ์ œ์˜ ํ‚คํฌ์ธํŠธ๋Š” ๊ตญ์–ด ์ ์ˆ˜๋Š” ๊ฐ์†Œํ•˜๋Š” ์ˆœ์„œ, ์˜์–ด ์ ์ˆ˜๋Š” ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ, ์ˆ˜ํ•™ ์ ์ˆ˜๋Š” ๊ฐ์†Œํ•˜๋Š” ์ˆœ์„œ, ์ด๋ฆ„์€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ ์ž„์„ ํŒŒ์•…ํ•˜๊ณ  ์ด์— ๋งž๋Š” return ๊ฐ’์„ ๊ฑด๋„ค์ฃผ๋ฉด ๋œ๋‹ค. ์ฐธ๊ณ ๋กœ ์ด๋ฆ„์€ String ์ด๋ฏ€๋กœ, compareTo() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. [JAVA] Comparator ์™€..

    [JAVA] ๋ฐฑ์ค€ 10814๋ฒˆ ใ€๋‚˜์ด์ˆœ ์ •๋ ฌใ€‘

    ์ด ๋ฌธ์ œ๋„, ๋‹ค๋ฅธ ์ •๋ ฌ ๋ฌธ์ œ์™€ ๋น„์Šทํ•˜๋‹ค. ์ฒ˜์Œ์—, Member ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•œ ๋’ค, Comparable์„ implements ํ•œ ๋‹ค์Œ ๋‚˜์ด๊ฐ€ ๊ฐ™๋‹ค๋ฉด, ๋งด๋ฒ„ ์•„์ด๋””๋ฅผ ๋น„๊ตํ•˜๊ณ , ๋‚˜์ด๊ฐ€ ๋‹ค๋ฅด๋‹ค๋ฉด, ๋‚˜์ด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ๋˜๊ฒŒ๋” compareTo()๋ฅผ ์ •์˜ํ•œ ํ›„ List memberList = new ArrayList(); ๋ฅผ ์„ ์–ธํ•ด์„œ Member ํƒ€์ž…์˜ ๊ฐ์ฒด๋“ค์„ ๊ธฐ๋กํ•œ ๋’ค, Collections.sort()๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ •๋ ฌํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ถœ๋ ฅ ์‹œ, [๋‚˜์ด ์ด๋ฆ„] ์ด ์ถœ๋ ฅ๋˜์•ผ ํ•˜๋ฏ€๋กœ, toString()์„ ์˜ค๋ฒ„๋ผ์ด๋”ฉํ•˜์˜€๋‹ค. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java..

    [JAVA] ๋ฐฑ์ค€ 11651๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ 2ใ€‘

    ์ด๋ฒˆ ๋ฌธ์ œ๋Š”, ์ด์ „์— ํ’€์—ˆ์—ˆ๋˜ 11650 ๋ฌธ์ œ์™€ ๊ต‰์žฅํžˆ ํก์‚ฌํ•˜๋‹ค. [JAVA] ๋ฐฑ์ค€ 11650๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐใ€‘ ์ด ๋ฌธ์ œ๋Š”, ๋‹จ์ˆœํžˆ 1์ฐจ์› ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์ด ์•„๋‹Œ, x์ขŒํ‘œ๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ y์ขŒํ‘œ๋„ ๋น„๊ตํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, sort ํ•จ์ˆ˜์˜ ์ •๋ ฌ ์กฐ๊ฑด์„ ๋ณ€๊ฒฝ์‹œ์ผœ์ฃผ์–ด์•ผ ํ•œ๋‹ค. [JAVA] Comparator ์™€ Comparable์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ ๋ฐฐ์—ด yinq.tistory.com ๋‹ค๋งŒ, ์ฐจ์ด์ ์ด ์žˆ๋‹ค๋ฉด, y์ขŒํ‘œ ๊ธฐ์ค€์œผ๋กœ ๋จผ์ € ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ํ•œ ๋’ค์—, y์ขŒํ‘œ๊ฐ€ ๊ฐ™๋‹ค๋ฉด, x์ขŒํ‘œ๋ฅผ ๋น„๊ตํ•ด์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋น„๊ตํ•œ๋‹ค๋Š” ์ ์ด๋‹ค. ์ €๋ฒˆ ๋ฌธ์ œ์—์„œ๋Š”, Comparator ์„ implements ํ•˜๋Š” CustomComparator ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์„œ ํ•ด๊ฒฐํ–ˆ์—ˆ๋Š”๋ฐ, ์ด๋ฒˆ์—” ๋žŒ๋‹ค ์‹ ์—ฐ์Šต๋„ ํ•  ๊ฒธ, ๋žŒ๋‹ค์‹์„ ์ด์šฉํ•ด์„œ ํ’€์–ด๋ดค๋‹ค. ๋žŒ๋‹ค์‹์œผ๋กœ..

    [JAVA] ๋ฐฑ์ค€ 11650๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐใ€‘

    ์ด ๋ฌธ์ œ๋Š”, ๋‹จ์ˆœํžˆ 1์ฐจ์› ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์ด ์•„๋‹Œ, x์ขŒํ‘œ๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ y์ขŒํ‘œ๋„ ๋น„๊ตํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, sort ํ•จ์ˆ˜์˜ ์ •๋ ฌ ์กฐ๊ฑด์„ ๋ณ€๊ฒฝ์‹œ์ผœ์ฃผ์–ด์•ผ ํ•œ๋‹ค. [JAVA] Comparator ์™€ Comparable์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœํ•˜๋Š” ๊ฐ€์žฅ ์‰ฌ์šด ๋ฐฉ๋ฒ•์€ Arrays ๋ฅผ import ํ•ด์ค€ ๋’ค, Arrays์˜ sort ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•Œ์•„์„œ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ํ•ด์ค€๋‹ค! sort ๋ฉ”์„œ๋“œ๋Š” Comparable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ Arrays ํด๋ž˜์Šค์—์„œ ๊ตฌํ˜„ํ•˜์—ฌ ๋™ yinq.tistory.com ๋งˆ์นจ ์ตœ๊ทผ์—, ํ•œ ๋ฐฑ์—”๋“œ ์Šค์ฟจ ๋™๊ธฐ๋ถ„ ๋•๋ถ„์— Comparator ์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ํ•œ ์ƒํƒœ๋ผ์„œ ์ˆ˜์›”ํ•˜๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋จผ์ €, Arrays.sort(int [][] array) ์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ sort ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ..

    [JAVA] ๋ฐฑ์ค€ 2751๋ฒˆ ใ€์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 2ใ€‘

    ์ •๋‹ต์„ ๋งž์ถ”๊ธด ํ–ˆ์ง€๋งŒ, ์‹œ๊ฐ„์ด ๋น„์ •์ƒ์ ์œผ๋กœ ๋†’์€ ๊ฒƒ ๊ฐ™์•„ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์„ ์‹œ๋„ํ–ˆ๋‹ค. 1. BufferedReader ์™€ Arrays.sort()๋ฅผ ์‚ฌ์šฉํ•œ ๋’ค, ํ–ฅ์ƒ๋œ for๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ BufferedWriter๋กœ ์ถœ๋ ฅํ•˜๊ฒŒ๋” ๋‹ต์„ ์ œ์ถœํ–ˆ๋”๋‹ˆ 1708ms ๊ฐ€ ๋‚˜์™”๋‹ค. 2. BufferedReader ์™€ Arrays.sort()๋ฅผ ์‚ฌ์šฉํ•œ ๋’ค, ์ผ๋ฐ˜์ ์ธ for๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ BufferedWriter๋กœ ์ถœ๋ ฅํ•˜๊ฒŒ๋” ๋‹ต์„ ์ œ์ถœํ–ˆ๋”๋‹ˆ 1472ms ๊ฐ€ ๋‚˜์™”๋‹ค. ํ–ฅ์ƒ๋œ for๋ฌธ๋ณด๋‹ค ๊ทธ๋ƒฅ for๋ฌธ ๋ฃจํ”„๋ฅผ ๋Œ๋ฆฌ๋Š”๊ฒŒ ์†๋„๊ฐ€ ๋” ๋น ๋ฅด๋‹ค๋Š” ์‚ฌ์‹ค์„ ์–ผ๋–จ๊ฒฐ์— ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. 3. BufferedReader ๋กœ ์ž…๋ ฅ์„ ๋ฐ›์€ ๋’ค, Arrays.sort ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  StringBuilder๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฐ์ดํ„ฐ๋“ค์„ ์ €์žฅํ•œ ๋’ค, ํ•œ๋ฒˆ์— ์ถœ๋ ฅํ•˜๊ฒŒ๋”..

    [JAVA] ๋ฐฑ์ค€ 11052๋ฒˆ ใ€์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐใ€‘

    ๋‚ด๊ฐ€ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ dp ๋งˆ์ง€๋ง‰ ๋ฌธ์ œ์ด๋‹ค! ์ด์ œ dp ๋ฌธ์ œ๋Š” ์‰ฝ๊ฒŒ ํ•ด๊ฒฐ๋ฒ•์ด ๋– ์˜ค๋ฅด๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์—ญ์‹œ๋‚˜, dp ๋ฐฐ์—ด์— ์–ด๋–ค ๊ฐ’์„ ๋„ฃ์–ด์•ผ ํ• ์ง€ ๊ณ ๋ฏผํ•˜๊ณ , dp๊ฐ’๋“ค ์‚ฌ์ด์— ๊ด€๊ณ„๋ฅผ ๋งบ์–ด์ฃผ๋Š”๊ฒŒ ์ค‘์š”ํ•˜๋‹ค. dp[i] ์—๋Š” ์ฃผ์–ด์ง„ ์นด๋“œํŒฉ์„ ํ™œ์šฉํ•ด์„œ i์žฅ์„ ์‚ด๋•Œ ์ง€๋ถˆํ•˜๋Š” ์ตœ๋Œ€ ๊ธˆ์•ก์„ ๊ธฐ๋กํ•  ๊ฒƒ์ด๋‹ค. ๋ณดํ†ต, ์˜ˆ์ œ๋ฅผ ๋ณด๋ฉด ๊ทœ์น™์ด ์–ด๋Š์ •๋„ ๋ณด์ธ๋‹ค. ๋ฌธ์ œ์—์„œ ์ฒ˜๋Ÿผ, 4์žฅ์„ ๋ฝ‘์•„์•ผ ๋˜๋Š” ์ƒํ™ฉ์—์„œ ์นด๋“œ ํŒฉ ๋ฐฐ์—ด์„ cp ๋ผ๊ณ  ํ–ˆ์„ ๋•Œ 1์žฅ ์นด๋“œ ํŒฉ = 3์› = cp[1] 2์žฅ ์นด๋“œ ํŒฉ = 5์› = cp[2] 3์žฅ ์นด๋“œ ํŒฉ = 15์› = cp[3] 4์žฅ ์นด๋“œ ํŒฉ = 16์› = cp[4] ์„ ์ƒ๊ฐํ•ด๋ณด์ž. dp[1] ์€ 1์žฅ ์นด๋“œํŒฉ์„ ์‚ฌ๋Š” ๊ฒฝ์šฐ ๋ฐ–์— ์—†์œผ๋ฏ€๋กœ dp[1] = cp[1] = 3์›์ด๋‹ค. dp[2] ๋Š” 2์žฅ์„ ๊ตฌ๋งคํ•ด์•ผ..

    [JAVA] ๋ฐฑ์ค€ 2011๋ฒˆ ใ€์•”ํ˜ธ์ฝ”๋“œใ€‘

    ์ด ๋ฌธ์ œ๋Š” ์˜ˆ์™ธ์ƒํ™ฉ์„ ๋น ๋ฅด๊ฒŒ ์บ์น˜ํ•˜๋Š”๊ฒŒ ์ค‘์š”ํ•œ ๋ฌธ์ œ์˜€๋‹ค. ๋จผ์ € dp๋ฐฐ์—ด์„ ์–ด๋–ค ์กฐ๊ฑด์œผ๋กœ ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ์ฑ„์šธ์ง€ ์ƒ๊ฐ์„ ํ•ด๋ด์•ผํ•œ๋‹ค. ์ตœ๋Œ€ 5000์ž๋ฆฌ ์ดํ•˜์˜ ์•”ํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค๊ณ  ํ–ˆ์œผ๋‹ˆ, dp[i]์—์„œ i๋Š” ์ž๋ฆฟ์ˆ˜๊ฐ€ ๋  ๊ฒƒ์ด๊ณ  ํ•ด๋‹น ์ž๋ฆฟ์ˆ˜์—์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ธฐ๋กํ•  ๊ฒƒ์ด๋‹ค. ์ž๋ฆฟ์ˆ˜๋Š” ๋†’์€ ์ž๋ฆฟ์ˆ˜๋ถ€ํ„ฐ ์‹œ์ž‘ํ•  ๊ฒƒ์ธ๋ฐ, ์˜ˆ์ œ๋ฌธ์ œ์ฒ˜๋Ÿผ 25114๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, dp[1] = [2] (1๊ฐ€์ง€) dp[2] = [2,5] [25] (2๊ฐ€์ง€) dp[3] = [2,5,1] [25, 1] (2๊ฐ€์ง€) dp[4] = [2, 5, 1, 1] [2, 5, 11] [25, 1, 1] [25, 11] (4๊ฐ€์ง€) dp[5] = [2, 5, 1, 1, 4] [2, 5, 1, 14] [2, 5, 11, 4] [25, 1, 1, 4] ..

    [JAVA] ๋ฐฑ์ค€ 2225๋ฒˆ ใ€ํ•ฉ๋ถ„ํ•ดใ€‘

    ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ํ˜ผ์ž ํ’€์–ด์„œ ๋งค์šฐ ๋ฟŒ๋“ฏํ–ˆ๋˜ ๋ฌธ์ œ! ํฌ๊ธฐํ•˜์ง€ ์•Š์•„์„œ ๊ฒฐ๊ตญ ํ’€ ์ˆ˜ ์žˆ์—ˆ๋‹ค~ DP๋ฌธ์ œ๋Š” Dp๋ฐฐ์—ด์„ ์–ด๋–ป๊ฒŒ ์ƒ์„ฑํ• ์ง€ ๊ณ ๋ฏผํ•˜๊ณ , ์ด์ „ dp๊ฐ’๋“ค์„ ์–ด๋–ป๊ฒŒ ํ™œ์šฉํ• ์ง€ ๊ณ ๋ฏผํ•ด๋ณด๋ฉด ๋‹ต์ด ๋ณด์ด๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ž˜๋„ ์ • ์•ˆ๋– ์˜ค๋ฅด๋ฉด, ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ง์ ‘ ์ ์–ด๋ณด๋ฉฐ ๊ทœ์น™์„ ์ฐพ์œผ๋ฉด ํ•ด๊ฒฐ์ด ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๋‚˜๋Š” dp[][] 2์ฐจ์› ๋ฐฐ์—ด์„ ์ƒ๊ฐํ–ˆ๋‹ค. ์•„๋ฌด๋ฆฌ ์ƒ๊ฐํ•ด๋„ 1์ฐจ์› ๋ฐฐ์—ด๋กœ๋Š” ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋ผ ํŒ๋‹จํ–ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ˆ˜ ์ž์ฒด์— ๋Œ€ํ•œ ๋ณ€ํ™”๋„ ์žˆ๊ณ  ์ˆ˜์˜ ๊ฐฏ์ˆ˜์— ๋Œ€ํ•œ ๋ณ€ํ™”๋„ ์ƒ๊ธฐ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ฑฐ๋‘์ ˆ๋ฏธ ํ•˜๊ณ  ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€ ์„ค๋ช…ํ•ด๋ณด๊ฒ ๋‹ค! dp[i][j]์—๋Š” i๋ฅผ j๊ฐœ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ธฐ๋กํ•  ๊ฒƒ์ด๋‹ค. dp[1][ ] ์˜ ๊ฒฝ์šฐ์—๋Š” dp[1][j] = j๊ฐ€ ์„ฑ๋ฆฝํ•œ๋‹ค. 1์„ 1๊ฐœ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ 1 ( 1 ) 1์„ ..