๐Ÿ’ป์ฝ”๋“œ์นดํƒ€

MunkiJeonยท2024๋…„ 6์›” 20์ผ

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

๋ชฉ๋ก ๋ณด๊ธฐ
16/18
post-thumbnail

043.ํฌ๊ธฐ๊ฐ€ ์ž‘์€ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด

/*
๋ฌธ์ œ ์„ค๋ช…
์ˆซ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด t์™€ p๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, t์—์„œ p์™€ ๊ธธ์ด๊ฐ€ ๊ฐ™์€ ๋ถ€๋ถ„๋ฌธ์ž์—ด ์ค‘์—์„œ,
์ด ๋ถ€๋ถ„๋ฌธ์ž์—ด์ด ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜๊ฐ€ p๊ฐ€ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ๊ฒƒ์ด ๋‚˜์˜ค๋Š” 
ํšŸ์ˆ˜๋ฅผ returnํ•˜๋Š” ํ•จ์ˆ˜ solution์„ ์™„์„ฑํ•˜์„ธ์š”.

์˜ˆ๋ฅผ ๋“ค์–ด, t="3141592"์ด๊ณ  p="271" ์ธ ๊ฒฝ์šฐ, 
t์˜ ๊ธธ์ด๊ฐ€ 3์ธ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ 314, 141, 415, 159, 592์ž…๋‹ˆ๋‹ค. 
์ด ๋ฌธ์ž์—ด์ด ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜ ์ค‘ 271๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ˆ˜๋Š” 141, 159 2๊ฐœ ์ž…๋‹ˆ๋‹ค.
*/
class Solution {
    fun solution(t: String, p: String): Int {
        var answer: Int = 0
        for(i in 0 .. t.length-p.length){
        	//toInt() ๋กœ ์ธํ•ด ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ ๋ฐœ์ƒ ์ถ”์ •
            //if(t.substring(i, i+p.length).toInt() - p.toInt() <= 0) ++answer
            if(t.substring(i,i+p.length) <= p) ++answer
        }
        return answer
    }
}

044.์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•

/*
๋ฌธ์ œ ์„ค๋ช…
๋ช…ํ•จ ์ง€๊ฐ‘์„ ๋งŒ๋“œ๋Š” ํšŒ์‚ฌ์—์„œ ์ง€๊ฐ‘์˜ ํฌ๊ธฐ๋ฅผ ์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. 
๋‹ค์–‘ํ•œ ๋ชจ์–‘๊ณผ ํฌ๊ธฐ์˜ ๋ช…ํ•จ๋“ค์„ ๋ชจ๋‘ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉด์„œ, 
์ž‘์•„์„œ ๋“ค๊ณ  ๋‹ค๋‹ˆ๊ธฐ ํŽธํ•œ ์ง€๊ฐ‘์„ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 
์ด๋Ÿฌํ•œ ์š”๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ง€๊ฐ‘์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด 
๋””์ž์ธํŒ€์€ ๋ชจ๋“  ๋ช…ํ•จ์˜ ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ์กฐ์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜ ํ‘œ๋Š” 4๊ฐ€์ง€ ๋ช…ํ•จ์˜ ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋ช…ํ•จ ๋ฒˆํ˜ธ	๊ฐ€๋กœ ๊ธธ์ด	์„ธ๋กœ ๊ธธ์ด
1	  		60			50
2			30			70
3			60			30
4			80			40
๊ฐ€์žฅ ๊ธด ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๊ฐ€ 
๊ฐ๊ฐ 80, 70์ด๊ธฐ ๋•Œ๋ฌธ์— 80(๊ฐ€๋กœ) x 70(์„ธ๋กœ) ํฌ๊ธฐ์˜ ์ง€๊ฐ‘์„ ๋งŒ๋“ค๋ฉด 
๋ชจ๋“  ๋ช…ํ•จ๋“ค์„ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
ํ•˜์ง€๋งŒ 2๋ฒˆ ๋ช…ํ•จ์„ ๊ฐ€๋กœ๋กœ ๋ˆ•ํ˜€ ์ˆ˜๋‚ฉํ•œ๋‹ค๋ฉด 80(๊ฐ€๋กœ) x 50(์„ธ๋กœ) ํฌ๊ธฐ์˜ ์ง€๊ฐ‘์œผ๋กœ 
๋ชจ๋“  ๋ช…ํ•จ๋“ค์„ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
์ด๋•Œ์˜ ์ง€๊ฐ‘ ํฌ๊ธฐ๋Š” 4000(=80 x 50)์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  ๋ช…ํ•จ์˜ ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” 2์ฐจ์› ๋ฐฐ์—ด sizes๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.
๋ชจ๋“  ๋ช…ํ•จ์„ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ง€๊ฐ‘์„ ๋งŒ๋“ค ๋•Œ, 
์ง€๊ฐ‘์˜ ํฌ๊ธฐ๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.
*/
import kotlin.math.*
class Solution {
    fun solution(sizes: Array<IntArray>): Int {
        var w = 0
        var h = 0
        for (i in sizes){
            i.sort()
            //IDE์—์„œ๋Š” ๋˜์ง€๋งŒ ์—ฌ๊ธฐ์„  ์ฐธ์กฐ๋˜์ง€ ์•Š์•˜๋‹ค๊ณ  ์•ˆ๋จ
            // if (w < i.max()) w = i.max()
            // if (h < i.min()) h = i.min()
            if (w < Math.max(i[0],i[1])) w = Math.max(i[0],i[1])
            if (h < Math.min(i[0],i[1])) h = Math.min(i[0],i[1])
        }
        return w * h
    }
}
profile
๊ณต์žฅ์ž๋™ํ™”์™€ ์›น ๊ฐœ๋ฐœ์„ ํ•ฅ์•„ ๋จน๋‹ค ์•ฑ ๊ฐœ๋ฐœ๋กœ ์ „ํ–ฅํ•œ ๊ฐœ๋ฐœ์ž์˜ ํ‚ค๋ณด๋“œ์˜ ๋‚ก์€ ํ‚ค์บกโ›‘๏ธ

0๊ฐœ์˜ ๋Œ“๊ธ€