๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿงฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/๐Ÿต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด(Java)

๋‘ ์ •์ˆ˜ ์‚ฌ์ด์˜ ํ•ฉ

by carrot0911 2024. 11. 8.

๋ฌธ์ œ ์„ค๋ช…

๋‘ ์ •์ˆ˜ a, b๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ a์™€ b ์‚ฌ์ด์— ์†ํ•œ ๋ชจ๋“  ์ •์ˆ˜์˜ ํ•ฉ์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”.
์˜ˆ๋ฅผ ๋“ค์–ด a = 3, b = 5์ธ ๊ฒฝ์šฐ, 3 + 4 + 5 = 12์ด๋ฏ€๋กœ 12๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.

https://school.programmers.co.kr/learn/courses/30/lessons/12912

 

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

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

programmers.co.kr

์ œํ•œ ์‚ฌํ•ญ

  • a์™€ b๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๋‘˜ ์ค‘ ์•„๋ฌด ์ˆ˜๋‚˜ ๋ฆฌํ„ดํ•˜์„ธ์š”.
  • a์™€ b๋Š” -10,000,000 ์ด์ƒ 10,000,000 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.
  • a์™€ b์˜ ๋Œ€์†Œ๊ด€๊ณ„๋Š” ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ

a b return
3 5 12
3 3 3
5 3 12

 

๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ

class Solution {
    public long solution(int a, int b) {
        long answer = 0;
        
        if (a > b) {
            int temp = a;
            a = b;
            b = temp;
        }
        
        for (int i = a; i <= b; i++) {
            answer += (long) i;
        }
        return answer;
    }
}

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

  • if (a > b) { } : ์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ ๋Œ€์†Œ๊ด€๊ณ„๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š์€ ๋‘ ์ˆ˜์˜ ๋Œ€์†Œ๊ด€๊ณ„๋ฅผ ์ •ํ•ด์ค€๋‹ค. a๊ฐ€ b๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ์—๋งŒ ์‹คํ–‰ํ•œ๋‹ค.
    • int temp = a : ๋ณ€์ˆ˜ temp ์— a ๊ฐ’์„ ๋„ฃ๋Š”๋‹ค.
    • a = b : ๋ณ€์ˆ˜ a์— b ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค.
    • b = temp : ๋ณ€์ˆ˜ b์— temp ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค.
  • for (int i = a; i <= b; i++) { } : ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ ๋‘ ์ˆ˜ ์‚ฌ์ด์˜ ์ˆ˜๋ฅผ ๋ชจ๋‘ ๋”ํ•ด์ค€๋‹ค.
    • answer += (long) i : ๋ณ€์ˆ˜ answer์— i ๊ฐ’์„ ๋ฐ˜๋ณตํ•ด์„œ ๋”ํ•ด์ฃผ๋Š”๋ฐ answer๊ฐ€ long ํƒ€์ž…์ด๋ฏ€๋กœ ๋ณ€์ˆ˜ i์˜ ๊ฐ’๋„ long ํƒ€์ž…์œผ๋กœ ํ˜•๋ณ€ํ™˜ํ•œ๋‹ค.