Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- search()
- 코딩 어?
- 리엑트블로거
- @Moditying @Query
- 깃 토큰 만료
- sql like연산자
- js 문자열을 문자배열로
- 5.3.8 Modifying Queries
- Robo3T 폰트 키우기
- 가상컴퓨터마법사
- lastIndexOf()
- 스프링 데이타 JPA
- 레디스 확인
- findIndex()
- 프론트엔드 스쿨
- ubuntu타임존
- Robo3T 글씨체 변경
- 시퀄 문법
- Robo3T 폰트변경
- 객체의 밸류값만 찾기
- sql 문자열 패턴 검색
- 객체를 배열로
- indexOf()
- ...점점점문법
- 문자열 인터폴레이션
- 배열을 객체로
- Robo3T 글씨키우기
- ${변수}
- 객체의키값만 찾기
- 우분투 시간 변경
Archives
- Today
- Total
코딩기록
항해 57일) (Python 3)백준 알고리즘 10773번 본문
728x90
답안
스택 자료구조 문제
count = int(input()) # 스택 리스트 안의 총 개수
list = [] #스택 리스트
for i in range(count): # for in range로 count 만큼의 수를 만듬
num = int(input())
if num == 0: # num이 0이면 pop으로 삭제
list.pop()
else:
list.append(num) # 0이 아니면 append (push)
print(sum(list)) #sum함수를 이용해 모든 수를 더한다
입력 값이 0이면 pop, 아니면 push하고 리트스 총합을 구한다.
리스트를 생성하고 for문을 돌려 입력을 받는다.
입력받은 숫자가 0이라면 pop으로 삭제하고 아니라면 리스트에 추가한다.
마지막으로 sum을 이용해 모두 더해주고 출력해준다.
✅ 알아야 할 것
스택(Stack)
스택은 데이터의 삽입과 삭제가 데이터의 한쪽 끝에서만 일어나는 자료구조 이다.
가장 마지막에 삽입된 데이터가 가장 먼저 사용되거나 삭제된다.
이를 후입선출 ( LIFO - Last In, First Out )이라고 한다.
예) 프링글스
더보기
2. 주요 Method
2-1. push, pop
데이터를 삽입하는 과정을 push,
가장 마지막에 삽입한 데이터를 삭제하는 과정을 pop이라고 부른다.
데이터를 삭제하는 pop의 경우 현재 스택에 데이터가 비어있는지 여부를 먼저 확인한 후에 실행한다.
2-2. top
pop이 가장 마지막에 삽입한 데이터를 삭제하는 것이라면
top은 가장 마지막에 삽입한 데이터를 삭제하지 않고 return 해주는 메소드이다.
2-3. isEmpty
isEmpty는 현재 스택이 비어있는지 여부를 확인하는 메소드 입니다.
pop() - 요소 삭제 함수
리스트의 맨 마지막 요소를 돌려주고 그 요소는 삭제한다.
x = [2,4,6,2,3,4,8,2]
pop_X = x.pop(2)
print(x)
print(pop_X)
print(x[3])
==========================================
[2, 4, 2, 3, 4, 8, 2]
6
3
append() - 요소 추가 함수
'list명.append(요소)' 형식으로 사용
리스트의 맨 마지막에 요소를 추가한다.
nums = [1, 2, 3]
nums.append(4)
print(1,nums)
nums.append([5, 6])
print(2,nums)
nums.append(7)
print(3,nums)
참고
* 파이썬으로 구현하는 자료구조! - 스택(Stack)
https://somjang.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%98%EB%8A%94-%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-%EC%8A%A4%ED%83%9D-Stack
참고
*백준 문제
반응형
'항해99 > (파이썬)알고리즘 스터디' 카테고리의 다른 글
항해 51일) (Python 3)백준 알고리즘 4948번 (0) | 2022.03.01 |
---|
Comments