티스토리 뷰
한화시스템 BEYOND SW 캠프 9기 33일차
2024.08.02_금
문제 추천을 또 받았다!!
이번에는 시간복잡도 관련해서 런타임 에러가 많이 발생하는 문제라고 했다.
우선 함 풀어보자!
Coding Test Practice > 연습문제 > 햄버거 만들기
https://school.programmers.co.kr/learn/courses/30/lessons/133502
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr

def solution(ingredient):
answer = 0
burger = [1, 2, 3, 1]
stack = []
# stack에 ingredient를 하나씩 넣어주고 burger와 비교하면서
# 마지막 4개가 버거와 같다면 answer에 1 더해주고 stack에서는 해당 부분 삭제
for i in ingredient:
stack.append(i)
if stack[-4:] == burger:
del stack[-4:]
answer += 1
return answer
보통 런타임 에러가 많이 발생하는건 제한사항을 보면 주어지는 값의 범위가 크고
(약 1억 개의 데이터가 반복하는데 1초 정도 걸린다고 한다.)
이중 for 문을 돌리게되면 보통 발생한다.
처음에 이 문제 while로 풀어봤는데...어떻게 while문을 종료해줘야할지 몰라서
다른 방법을 강구해봤다.
그래서 생각해낸것이 스택을 이용해보는 것!!
for문 한 번만 이용하고 제한사항에 있는 조건도
1 ≤ ingredient의 길이 ≤ 1,000,000 이여서 (2중 for문 돌리면 안되고)
런타임 에러가 뜨지 않고 통과 되었다!!
수업 끝나고 푼 문제는 내가 올해 처음 (대략 4월쯤) 코딩테스트라는걸 배우고
파이썬을 코테용으로 혼자 공부할 때 풀던 문제였는데,
오랜만에 풀어봤는데 풀렸다....
Coding Test Practice > 코딩 기초 트레이닝 > 조건에 맞게 수열 변환하기 2
https://school.programmers.co.kr/learn/courses/30/lessons/181881
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(arr):
arr_now = [] # 현재 배열
cnt = 0
# 이전 배열과 맞는지 확인
while 1:
# arr 하나씩 돌려보면서 조건에 맞는지 확인
for i in arr:
if i % 2 == 0 and i >= 50:
arr_now.append(i // 2)
elif i % 2 == 1 and i < 50:
arr_now.append(i * 2 + 1)
else:
arr_now.append(i)
cnt += 1
if arr == arr_now:
return cnt-1
else :
arr = arr_now
arr_now = []
수업은 JDBC를 드디어 시작했다.
인텔리제이에서 DB를 연결해야하는데 맥북이 어색하고 많이 안써봐서 그런지
자꾸 오류가 발생하고 연결도 잘 안되더라..
root에서 host를 localhost로 계정을 만들고
그 다음에 %로 만들어보니 만들어졌다.
처음부터 %로 만들었을 때는 안됐었는데, 먼저 localhost로 만드니까 되더라
이렇게 맥북으로 DB 쓰는 연습하는거지~~
ㅋㅋㅋㅋㅋㅋㅋㅋ

연결이 잘 되었다!! 값도 잘 들어갔고..!!
이렇게 오류 나오면 그냥 바로 스샷 찍어놓고 이렇게 마무리할 때 사용하면서
오류 뭐가 있는지 보고 공부도 하고 하자!!
지금까지 공부하고 회고쓰는 방식 좋다!!
이렇게만 하자!!
'한화시스템 > 회고' 카테고리의 다른 글
[035] Servlet 쉽지 않네... && 프로젝트 특강 (0) | 2024.08.06 |
---|---|
한화시스템 BEYOND SW 캠프 9기 7주차 회고 (0) | 2024.08.04 |
[032] 알고리즘 문제 + 비즈니스 특강 (0) | 2024.08.01 |
[031] JAVA 알고리즘...자료구조... (0) | 2024.08.01 |
[030] JAVA로 알고리즘!! && 회의지옥..? (0) | 2024.07.30 |