λ‹€λ₯Έ μ‚¬λžŒμ΄ λ΄€μ„λ•Œ μ‰¬μšΈμˆ˜λ‘, κ°„κ²°ν• μˆ˜λ‘ 쒋은 μ½”λ“œλΌκ³ ν–ˆλŠ”λ° 이게 κ°„κ²°ν•˜κ²Œ μ§œλ‹€λ³΄λ©΄ μˆ˜ν•™μ  지식이 μ–•μ€μ‚¬λžŒμ—κ²ŒλŠ” μ–΄λ €μš΄μ½”λ“œκ°€ λ˜λ²„λ¦¬κ³  쑰금 ν’€μ–΄μ„œμ“°λ©΄ 길이가 점점 길어짐.. μ–΄λŠμ •λ„ 선을 κ°„κ²°ν•˜κ³  μ‰¬μš΄ 쒋은 μ½”λ“œλΌκ³  ν•  수 μžˆμ„κΉŒ?


1번

if (a > b) a ^= b ^= a ^= b; answer = (long long)b * -~b / 2 - (long long)a * ~-a / 2; return answer;


2번

int a = A < B ? A : B; int b = A < B ? B : A; for (int i = a; i <= b; i++) answer += i; return answer; }


3번

int i,j,temp; i=a; j=b; if(i>j) { temp = i; i=j; j=temp; } for(i; i<=j; i++) { answer = answer+i; } return answer; }


μ΄λ ‡κ²Œ 3κ°œμ— μ½”λ“œκ°€ μžˆλŠ”λ° 곡차가 1인 λ“±μ°¨μˆ˜μ—΄μ„ κ΅¬ν•˜λŠ” μ½”λ“œμ•Ό.Β 

1번이 μ§§κ³  2개의 λ³€μˆ˜λ§Œ μ‚¬μš©ν•˜λŠ”λ° 지식이 μ–•μœΌλ©΄ 이해λ₯Ό λͺ»ν•¨.

2λ²ˆμ€ μ§§κ³  μ΄ν•΄ν•˜κΈ° νŽΈν•œλ° λ³€μˆ˜λ₯Ό 4κ°œλ‚˜μ”€.

3λ²ˆμ€ 2개의 λ³€μˆ˜λ₯Ό 2개의 λ³€μˆ˜μ— λ‹€μ‹œλŒ€μž…ν•˜κ³  1개의 tempλ³€μˆ˜λ₯Ό μ‚¬μš©ν•¨.


3λ²ˆμ€ λˆ„κ°€λ΄λ„ 쒋은 μ½”λ“œλŠ” μ•„λ‹Œλ° 1,2λ²ˆλ΄€μ„λ•Œ μ½κΈ°νŽΈν•œ 2번이 μ’‹μ€μ½”λ“œμΈμ§€ κ°„κ²°ν•˜κ³  λ³€μˆ˜λœμ“°λŠ” 1번이 μ’‹μ€μ½”λ“œμΈμ§€ λͺ¨λ₯΄κ² μŒ.