티스토리 뷰
반응형
막대기 성공
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 (추가 시간 없음) | 512 MB | 28374 | 12017 | 9695 | 43.191% |
문제
아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 6, 9, 7, 6, 4, 6 이다. 일렬로 세워진 막대기를 오른쪽에서 보면 보이는 막대기가 있고 보이지 않는 막대기가 있다. 즉, 지금 보이는 막대기보다 뒤에 있고 높이가 높은 것이 보이게 된다. 예를 들어, 그림과 같은 경우엔 3개(6번, 3번, 2번)의 막대기가 보인다.
N개의 막대기에 대한 높이 정보가 주어질 때, 오른쪽에서 보아서 몇 개가 보이는지를 알아내는 프로그램을 작성하려고 한다.
입력
첫 번째 줄에는 막대기의 개수를 나타내는 정수 N (2 ≤ N ≤ 100,000)이 주어지고 이어지는 N줄 각각에는 막대기의 높이를 나타내는 정수 h(1 ≤ h ≤ 100,000)가 주어진다.
출력
오른쪽에서 N개의 막대기를 보았을 때, 보이는 막대기의 개수를 출력한다.
예제 입력 1 복사
6
6
9
7
6
4
6
예제 출력 1 복사
3
예제 입력 2 복사
5
5
4
3
2
1
예제 출력 2 복사
5
#include "iostream"
#include <stack>
using namespace std;
int main(void)
{
int n;
stack<int> h;
int h1;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> h1;
h.push(h1);
}
h1 = h.top();
int num = 1;
h.pop();
while (!h.empty())
{
if (h1 < h.top())
{
h1 = h.top();
h.pop();
num++;
}
else
{
h.pop();
}
}
printf("%d", num);
return 0;
}
h1=h.top();
여기 부분 안 해서 틀렸었다.
반응형
'프로그래밍 > 백준 문제풀이' 카테고리의 다른 글
백준 11098 C/C++ 첼시를 도와줘 (0) | 2024.04.02 |
---|---|
백준 1977 C/C++ 완전제곱수 (0) | 2024.04.02 |
백준 11328 Strfry C/C++ (0) | 2024.03.06 |
백준 13300 방배정 C/C++ (0) | 2024.03.05 |
백준 10807 C/C++ (0) | 2024.03.05 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 오블완
- c++
- 뇌와행동의기초
- 백준
- K-MOOC
- 파이썬
- 사회심리학
- 보세사
- stl
- 데이터분석
- 티스토리챌린지
- jlpt
- Python
- 인지부조화
- EBS
- 열혈프로그래밍
- 윤성우
- 인프런
- 일본어문법무작정따라하기
- 통계학
- 일본어
- 코딩테스트
- 심리학
- 일문따
- 회계
- 여인권
- C
- C/C++
- 통계
- 류근관
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함
반응형