
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
}
}