반응형
https://www.acmicpc.net/problem/10799
10799번: 쇠막대기
여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저
www.acmicpc.net
레이저일 때는,
ans += 쇠막대기의 개수;
쇠막대기의 끝일 때는,
쇠막대기의 개수 -= 1;
ans += 지금 분리된 쇠막대기 1개;
#include <cstdio>
int cnt = 0, ans = 0, ch, pch;
int main() {
while ((ch=getchar()) != '\n') {
if (ch == '(') cnt++;
else cnt--, ans += pch == '(' ? cnt : 1;
pch = ch;
}
printf("%d", ans);
}
반응형
'Algorithm' 카테고리의 다른 글
백준 1406 : 에디터 (0) | 2021.11.14 |
---|---|
백준 11866 : 요세푸스 문제 0 (0) | 2021.11.14 |
백준 2164 : 카드2 (0) | 2021.11.14 |
백준 1158 : 요세푸스 문제 (0) | 2021.11.14 |
프로그래머스 : 스티커 모으기(2) (0) | 2021.11.14 |