Hackerrank | Maximum Element
7872 단어 hackerrank2020SISSC2020
Link
https://www.hackerrank.com/challenges/maximum-element/problem
Problem
1 이면 stack에 push
2면 pop
3이면 현재 스택에 저장된 값 중 가장 큰 값 출력
Code
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
int top = 0, max = 0;
int stack[1000000] = { 0 };
void push();
void pop();
int main() {
int n;
int type;
int num;
scanf("%d", &n);
while (n--)
{
scanf("%d", &type);
if (type == 1)
push();
else if (type == 2)
pop();
else
printf("%d\n", max);
}
return 0;
}
void push()
{
int i;
scanf("%d", &i);
top++;
stack[top] = i;
if (max < stack[top]) //최대값 찾는 과정
max = stack[top];
}
void pop()
{
int i;
if (max == stack[top])
max = 0; //현재 나가는 값이 최대값이면 최대값=0
top--;
for (i = top; i >= 0; i--) //다시 최대값 찾기
{
if (max < stack[i])
max = stack[i];
}
}
Result
Author And Source
이 문제에 관하여(Hackerrank | Maximum Element), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@2rlo/Hackerrank-Maximum-Element저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)