KDLiam

[Programmers ์ฝ”๋”ฉ ๊ธฐ์ดˆ ํŠธ๋ ˆ์ด๋‹ : Java] ์ฃผ์‚ฌ์œ„ ๊ฒŒ์ž„ 2 ๋ณธ๋ฌธ

Problems(Java)/Programmers

[Programmers ์ฝ”๋”ฉ ๊ธฐ์ดˆ ํŠธ๋ ˆ์ด๋‹ : Java] ์ฃผ์‚ฌ์œ„ ๊ฒŒ์ž„ 2

KDLiam 2025. 10. 10. 16:50

๐Ÿ”— ๋ฌธ์ œ ๋งํฌ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 181930 - ์„ธ ์ˆ˜์˜ ์กฐ๊ฑด๋ณ„ ๊ณ„์‚ฐ

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก์˜ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr


๐Ÿ’ก ๋ฌธ์ œ ์„ค๋ช…

์ •์ˆ˜ a, b, c๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

  1. ์„ธ ์ˆ˜๊ฐ€ ๋ชจ๋‘ ๊ฐ™์œผ๋ฉด: (a + b + c) * (a^2 * 3) * (a^3 * 3)
  2. ๋‘ ์ˆ˜๋งŒ ๊ฐ™์œผ๋ฉด: (a + b + c) * (a^2 + b^2 + c^2)
  3. ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉด: (a + b + c)

๐Ÿงฉ ๋‚ด ์ฝ”๋“œ

 
class Solution {
    public int solution(int a, int b, int c) {
        if (a == b && b == c) {
            return (a + b + c) * (a * a * 3) * (a * a * a * 3);
        } else if (a == b || b == c || a == c) {
            return (a + b + c) * (a * a + b * b + c * c);
        } else {
            return (a + b + c);
        }
    }
}

โœ… ์ฝ”๋“œ ์„ค๋ช…

์กฐ๊ฑด์—ฐ์‚ฐ
a == b && b == c ์„ธ ์ˆ˜๊ฐ€ ๋ชจ๋‘ ๊ฐ™์„ ๋•Œ, ํ•ฉ × ์ œ๊ณฑํ•ฉ × ์„ธ์ œ๊ณฑํ•ฉ
`a == b  
else ๋ชจ๋‘ ๋‹ค๋ฅผ ๋•Œ, ํ•ฉ๋งŒ ๋ฐ˜ํ™˜
  • ์กฐ๊ฑด๋ฌธ ์ˆœ์„œ: ์„ธ ์ˆ˜๊ฐ€ ๋ชจ๋‘ ๊ฐ™์€ ๊ฒฝ์šฐ๋ฅผ ๋จผ์ € ์ฒดํฌํ•ด์•ผ ํ•จ
  • ๊ณฑ์…ˆ ์ˆœ์„œ: ๊ด„ํ˜ธ๋กœ ๋ฌถ์–ด ์—ฐ์‚ฐ ์ˆœ์„œ๋ฅผ ๋ช…ํ™•ํžˆ ํ•จ

โšก ์„ฑ๋Šฅ ์ธก๋ฉด

  • ์‹œ๊ฐ„ ๋ณต์žก๋„: O(1) — ์—ฐ์‚ฐ ํšŸ์ˆ˜๊ฐ€ ๊ณ ์ •๋˜์–ด ์žˆ์Œ
  • ๊ณต๊ฐ„ ๋ณต์žก๋„: O(1) — ์ถ”๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ์—†์Œ
  • ํšจ์œจ์„ฑ: ์ด๋ฏธ ์ตœ์ ํ™”๋œ ๊ตฌ์กฐ๋กœ, ๊ฐœ์„  ์—ฌ์ง€๋Š” ๊ฑฐ์˜ ์—†์Œ

๐Ÿ“ ์ •๋ฆฌ

  • ์กฐ๊ฑด๋ณ„ ๊ณ„์‚ฐ ๋ฌธ์ œ์—์„œ if/else if/else ์ˆœ์„œ๊ฐ€ ์ค‘์š”
  • ๋ชจ๋“  ์กฐ๊ฑด์„ ์ถฉ์กฑํ•˜๋„๋ก ์ˆœ์„œ๋ฅผ ์ž˜ ์žก์•„์•ผ ํ•จ
  • ์—ฐ์‚ฐ๋Ÿ‰์ด ๋งŽ์ง€ ์•Š์•„ ์„ฑ๋Šฅ ๊ฑฑ์ •์€ ์—†์Œ
  • ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด ๊ณ„์‚ฐ ์ˆœ์„œ๋ฅผ ๋ช…ํ™•ํžˆ ํ‘œ์‹œํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ