본문 바로가기 메뉴 바로가기

jenlog

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

jenlog

검색하기 폼
  • All (81)
    • algorithm (71)
      • baekjoon (31)
      • swea (30)
      • programmers (9)
    • JS (1)
    • Vue.js (2)
    • React (2)
    • * etc (5)
  • 방명록

algorithm (71)
[프로그래머스] 크레인 인형뽑기 게임 / python 파이썬

🎃 2019 카카오 개발자 겨울 인턴십 문제 입출력 예시 코드 스택으로 해결했다 def solution(board, moves): stack = [] # 스택 cnt = 0 # answer for i in moves: # moves를 순회하면서 for row in range(len(board)): if board[row][i-1]: # 0이 아니면, stack에 넣고 0으로 바꾸기 stack.append(board[row][i-1]) board[row][i-1] = 0 break # 만약 stack에 같은 숫자가 있으면 삭제 후 카운트 if len(stack) > 1: if stack[-1] == stack[-2]: cnt += 2 stack.pop() stack.pop() return cnt

algorithm/programmers 2021. 7. 29. 23:27
[백준] 21609. 상어 중학교 / python 파이썬

🚩 시뮬레이션, 구현, BFS * 2021 삼성 상반기 오전 공채 SW 역량테스트 문제 (SW A형) https://www.acmicpc.net/problem/21609 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net thinking 1️⃣ 오토플레이 -> while문 사용 2️⃣ 크기가 가장 큰 블록 찾기 -> 가능한 블록 그룹의 경우를 모두 구한 후, 내림차순 소팅해서 최대블록 구하기 - 이때, 블록크기, 무지개크기, 블록 좌표 필요 - 무지개 블록(0)은 아래처럼 다른 블록과도 연결될 수 있기때문에 방..

algorithm/baekjoon 2021. 7. 11. 19:31
[백준] 20057. 마법사 상어와 토네이도 / python 파이썬

🚩 시뮬레이션, 구현 * 삼성 SW 역량 테스트 기출 문제 thinking 1. 토네이도 회전 방향 (y의 위치) 2. 방향별 모래 비율 위치 3. a값과 격자 밖의 모래의 양 이렇게 3가지가 문제풀이의 관건이었다. 구현 문제는 말그대로 문제에서 하라는대로 하면 되는데 토네이도 구현이 어려웠다. 1. 토네이도 회전 방향 (y의 위치) 토네이도 도는 방법을 두가지로 구해봤다. N = 5인 경우, 위의 그림이랑 맨 위 문제에 주황색으로 표시한 것 처럼 총 24번 움직인다. (왼쪽 오른쪽 위 아래 = 0 1 2 3) ◾ 방법 1 - 몫과 나머지로 구하기 (검정색) →↑(2 3)이 ←↓(0 1)에 비해 한번씩 더 움직이고, 한바퀴 다 돌면 이전보다 한번 더 움직이므로 몫을 회차, 나머지를 dxdy directi..

algorithm/baekjoon 2021. 7. 5. 01:06
[백준] 2579. 계단오르기 / python 파이썬

🚩 DP thinking 전형적인 DP 문제이다. 무조건 마지막 계단을 밟아야 하므로 리스트를 뒤집어 0번 인덱스부터 시작해줬다. 연속된 세 개의 계단을 밟으면 안되기 때문에 dp[i-1]+s[i] 로 하지 않고 dp[i-3]+s[i-1]+s[i] 로 설정해줬다. 런타임에러 (IndexError) 주의 ! 첫계단과 두번째 계단을 아래처럼 설정했더니 인덱스 에러가 났다. range의 범위가 3 이하일 수 있으므로 패쓰코드처럼 작성해야 한다. # Index Error 난 부분 dp = [0]*N dp[0] = s[0] dp[1] = s[0]+s[1] dp[2] = s[0]+s[2] for i in range(3, N): dp[i] = max(dp[i-2]+s[i], dp[i-3]+s[i-1]+s[i]) 코드..

algorithm/baekjoon 2021. 6. 30. 00:27
[백준] 2003. 수들의 합 2 / python 파이썬 / 투포인터, 구간합

🔍 투포인터(Two Pointers) 리스트에 순차적으로 접근해야 할 때 start point와 end point의 위치를 기록하면서 해결하는 방법 🔍 구간 합(Prefix Sum) ◾ 부분 합 : 0~k 까지의 합 ◾ 구간 합 : i~j 까지의 합 N = 5 lst = [10, 20, 30, 40, 50] # Prefix Sum 배열 계산 tmp = 0 prefix_sum = [0] for num in lst: tmp += num prefix_sum.append(tmp) # 구간 합 계산 left = 3 right = 4 print(prefix_sum[right] - prefix_sum[left-1]) boj 2003 코드 def sol(N, M, a): s, e = 0, 0 subsum = a[0] ..

algorithm/baekjoon 2021. 6. 30. 00:14
이전 1 2 3 4 5 6 ··· 15 다음
이전 다음
글 보관함
TAG
  • 2018 카카오 공채
  • 브루트포스
  • merge에러
  • 삼성기출
  • dp
  • 20057 마법사 상어와 토네이도
  • 영어끝말잇기
  • 백준
  • dfs
  • 파이썬
  • 삼성코테
  • BFS
  • 프로그래머스
  • 2579 계단오르기
  • 21609 상어 중학교
  • Python
  • 기지국설치
  • 17406 배열돌리기4
  • merge 에러
  • swea
  • 알고리즘
  • 20056 마법사 상어와 파이어볼
  • git 미러링
  • react
  • 보석쇼핑
more
최근에 올라온 글
Total
Today
Yesterday
최근에 달린 댓글
«   2025/09   »
일 월 화 수 목 금 토
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

jennnn.tistory.com

티스토리툴바