2022년 7월 15일에 작성됨
https://school.programmers.co.kr/learn/courses/30/lessons/12912
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 분석
- a, b를 포함한 a와 b 사이의 합을 구하는 문제이다.
- a와 b의 대소관계가 정해져 있지 않으므로, a랑 b가 같은 경우, 큰 경우, 작은 경우의 3가지로 나누어 풀어본다.
소스 코드 (⭕)
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
long long solution(int a, int b) { // a와 b의 범위를 고려해 long long으로 선언
long long answer = 0;
if(a==b) { // a와 b가 같은 경우
return a;
}
else if(a<b) { // a보다 b가 큰 경우
for(int i=a; i<=b; i++)
answer+=i;
}
else { // b보다 a가 큰 경우
for(int i=b; i<=a; i++)
answer+=i;
}
return answer;
}
코드 분석
a와 b가 같을 때
그 값을 그대로 반환해준다.
a보다 b가 클 때
i의 초깃값을 a라고 두고, b랑 같아질 때 까지의 값을 answer에 누적시켜 합을 구한다.
b보다 a가 클 때
i의 초깃값을 b라고 두고, a랑 같아질 때 까지의 값을 answer에 누적시켜 합을 구한다.
피드백 ✍️
주석들의 들여쓰기 위치 맞춰주면 더 깔끔할 것 같다.
if 문 조건에서 수식을 ‘i<=b’를 ‘i <= b’ 처럼 띄어쓰기를 넣어주면 가독성에 더 좋다.
end
주석 들여쓰기를 탭 두 번으로 맞춘다고 한건데 주석끼리 맞춰주는게 더 보기 좋구나.. 앞으로는 주석끼리 맞추도록 해야 겠다! (이미 수정된 상태입니다!)
프로그래머스는 비주얼 스튜디오 처럼 코드가 자동 정렬이 안돼서 불편하다ㅜ_ㅜ 내가 모르는 기능이 따로 있는건가?
'코딩테스트 & 문제 풀이' 카테고리의 다른 글
[C]프로그래머스_Lv1 : 평균 구하기 (0) | 2023.05.04 |
---|---|
[C]프로그래머스_Lv1 : 약수의 합 (1) | 2023.05.03 |
[C]프로그래머스_Lv1 : 나머지가 1이 되는 수 찾기 (1) | 2023.05.02 |
[C]코드업_1099 : [기초-2차원배열] 성실한 개미 (2) | 2023.05.01 |
[C]코드업_1098 : [기초-2차원배열] 설탕과자 뽑기 (0) | 2023.04.30 |