반응형
문제
https://www.acmicpc.net/problem/8958
풀이
- step이라는 변수를 두어서 O가 연속으로 나올 때, step의 값을 1씩 증가시키고 그 값을 출력 값에 더해주는 방식으로 풀이할 수 있음
- X 문자열을 기준으로 문자열을 나누는 방식으로도 풀이할 수 있음
- OOXXOOOXO 라는 문자열이 있다면, X를 기준으로 문자열을 나누면 ["OO", "OOO", "O"]의 배열이 만들어짐
- ["OO"(1 + 2), "OOO"(1 + 2 + 3), "O"(1)"] 길이에 따라서 1 ~ N까지의 합 공식을 사용해서 풀이할 수 있음
- 1 ~ N 까지의 합 = N * (N + 1) / 2
소스코드
후기
- 처음에는 첫번째 방법으로 풀이했지만, 다른분들의 풀이도 참고하면서 두번째 방법에 대해도 알게되었음
- 두번째 방법으로 풀이를 하면서 코드가 짧아지니깐 좀 재밌는것 같다..ㅎㅎ 😋
반응형
'PS > 백준' 카테고리의 다른 글
[BOJ] 백준 4673 셀프 넘버 (Swift) (0) | 2022.12.30 |
---|---|
[BOJ] 백준 4344 평균은 넘겠지 (Swift) (0) | 2022.12.28 |
[BOJ] 백준 1546 평균 (Swift) (0) | 2022.12.27 |
[BOJ] 백준 3052 나머지 (Swift) (0) | 2022.12.27 |
[BOJ] 백준 5597 과제 안 내신분..? (Swift) (0) | 2022.12.27 |