본문으로 바로가기

Daim's blog

네비게이션

  • 홈으로
  • 블로그소개
관리자
  • 블로그 이미지
    다임하게

    파이썬으로 다양한 알고리즘 문제를 풀고 정리하는 공간입니다 : )

    링크추가
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃

Python으로 푸는 SW Expert Academy 1219. 길찾기

SW Expert Academy 1219. 길찾기도시들의 간의 간선 정보가 나와 있고,가는 길의 개수와 상관없이 한가지 길이라도 도시 0 에서 도시 99로 갈 수 있는 길이 존재하는지 확인하는 코드를 구현해야 한다.삼성 SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 조건출발점은 0, 도착점은 99로 표현된다.도시 사이의 간선은 일방통행으로 연결되어 있으므로 되돌아오는 것이 불가능하다.그 말은 즉, 도시에 들어갈 순 있어도 나갈 순 없는 도시도 존재할 수도 있다는 말이다. (사이트에 예시로 나와 있는 10번 도시가 그렇다)문제 풀이문제에서는 size 100의 정적배열 2개를 선언하여 각 정점 번호를 주소로 사용하고, 저장되는 데이터는 각 정점에서 도착하는 정점의 번호..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 3. 9. 23:30

Python으로 푸는 SW Expert Academy 1206. View

1206. View 문제는 1차원 배열의 문제로,1차원 배열로 주어진 빌딩의 높이를 계산하여왼쪽과 오른쪽 각각에 2 이상의 조망권을 확보한 세대 수를 반환해야 한다.SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 조건좌우로 2칸 이상의 공백이 존재하는 세대 수를 합해 반환한다.가로는 1000이하로 주어진다. 각 빌딩의 높이는 최대 255이다.맨 왼쪽 두 칸과 맨 오른쪽 두 칸에는 건물이 지어지지 않는다.문제 풀이문제를 이해하면 풀기가 쉽다. 건물이 지어지지 않은 맨 왼쪽 두 칸과 맨 오른쪽 두 칸을 제외하고 빌딩이 지어진 부분인 Index 2부터 i -2의 원소까지 순회한다. i번째 원소의 왼쪽 2개의 원소와 오른쪽 2개의 원소 각각의 최대 값을 찾는다. i번째 원소..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 3. 2. 23:30

Python으로 푸는 SW Expert Academy 1954. 달팽이 숫자

SW Expert Academy 1954. 달팽이 숫자문제에서는 N을 입력받아 N*N 배열에 숫자를 시계방향으로 내부를 감싸듯이 출력해야만 한다.삼성 SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 이해하기문제는 다음 표를 보면 바로 이해가 가능하다.배열의 크기를 입력받아 아래의 표처럼 숫자를 입력하여 출력하면 된다.12 3 89 4 76 5 문제 풀이점차 증가하는 숫자는 다음과 같은 경우에 방향을 변화시킨다. 변화하는 방향은 오른쪽- 아래 - 왼쪽 - 위(→·↓·←·↑) 순서이다.- 다음에 숫자를 놓을 위치가 배열의 범위를 벗어 날 경우- 다음에 숫자를 놓을 위치에 이미 숫자를 넣은 경우방향을 변화시키면서 마지막 값(N*N) 숫자를 넣고 난 후 배열을 출력한다.파이..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 3. 1. 23:30

Python으로 푸는 SW Expert Academy 1974. 스도쿠 검증

1974. 스도쿠 검증문제는 스도쿠 조건에 따라숫자가 잘 놓여져 있는지 확인할 수 있도록 검증하는 코드를 짜야한다.삼성 SW Expert Academy에서 푼 문제 리스트 보러 가기github에서 코드 보기문제 조건스토쿠는 숫자퍼즐로 가로 9칸 세로 9칸으로 이루어져 있는 2차원 배열에 1부터 9까지의 숫자를 채워넣는 퍼즐이다.같은 줄에 1에서 9까지의 숫자를 한번씩만 넣고, 3*3 크기의 작은 격자 또한, 1에서 9까지의 숫자가 겹치지 않아야 한다.문제 풀이주어진 테스트 케이스를 모두 통과하려면, 3*3 형태로 나눈 구역에서도 스도쿠의 조건이 충족해야만 모든 테스트 케이스를 통과할 수 있다.가로, 세로 체크하는건 너무 쉽고 3*3 구역을 체크하는게 이 문제의 핵심인데, 사실상 노가다로 9개의 for문을..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 28. 23:30

Python으로 푸는 SW Expert Academy 1824. 혁진이의 프로그램 검증

SW Expert Academy 1824. 혁진이의 프로그램 검증문제에서는 혁진이가 만든 혁어셈블리어를 이용해 만든 프로그램을 검증하는 함수를 구현해야 한다.수행 명령에 따라 2차원 배열을 이동하면서 프로그램이 실행을 정지하는 '@'문제에 도달할 수 있는지 알아보자삼성 SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 조건혁진이가 만든 명령어에 따라 명령을 수행한다.만약 다음 이동이 2차원 격자의 바깥으로 이동하는 방향이라면, 반대편에 있는 위치로 이동한다.혁셈블리어에는 메모리가 단 하나 있으며, 0에서 15사이의 정수를 하나 저장할 수 있다.가장 처음에는 0이 저장되어 있으며 오른쪽으로 먼저 이동한다. 문자수행 명령 이동 방향을 오른쪽으로 바꾼다. ^ 이동 방향을 위..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 26. 23:30

Python으로 푸는 SW Expert Academy 1209. Sum

SW Expert Academy 1209. 은 가로, 세로, 대각선 방향으로의 합이가장 큰 경우를 반환하는 문제이다.어렵지 않게 쉽게 풀 수 있다.SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 풀이이 문제는 반복문만 많이 사용하면 충분히 문제를 풀 수가 있다. 다만 문제를 풀 때, 최대한 시간 복잡도를 줄이려고 노력하면서 풀면 더 재미있게 풀 수 있다.파이썬 코드12345678910111213141516171819202122232425262728293031323334353637383940def sumArray(array): max, vr, vl = 0 , 0, 0 for i in range(0, num): vr += array[i][i] vl += array[num..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 25. 23:30

Python으로 푸는 SW Expert Academy 5202. 화물 도크

SW Expert 아카데미 5202. 화물도크 문제에서는 일정 시간동안 최대한 많은 화물차가 화물을 싣고 내릴 수 있도록 하면,최대 몇대의 화물차가 이용할 수 있는지 알아내야 한다.문제 보러 가기github에서 코드 보기문제에서 제시한 조건 1. 작업은 24시간 진행된다.2. 작업 시작 시간은 매시 정각을 기준으로 하며, 앞 작업의 종료와 동시에 다음 작업을 시작할 수 있다.문제 풀기 전 결정 사항- 최대한 많은 화물차가 싣고 내릴 수 있도록 하려면 최단 시간에 업무를 종료하는 화물차를 우선으로 내보내야 한다. - 모든 테스트 케이스를 입력받아 처리하지 않고 yield 키워드로 generator를 사용하여 각각의 케이스별로 input 데이터를 처리하여 결과 값을 출력한다. 문제 풀이 방법이 문제는 그리디..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 3. 23:30

Python으로 푸는 SW Expert Academy 5201. 컨테이너 운반

SW Expert 아카데미 5201. 컨테이너 운반 문제에서는 A에서 B 도시로 N개의 트럭이 무게가 서로 다른 콘테이너를 운반하는데 최적의 방법을 찾아야 한다.최적의 방법에 따라 옮겨진 화물의 전체 무게가 얼마인지 출력해보자.문제 보러 가기github에서 코드 보기 문제에서 제시한 조건1. 컨테이너의 무게가 정해져 있고, 트럭마다 적재 가능한 용량이 주어진다.2. A도시에서 B도시로 최대 M대의 트럭이 편도로 한번만 운행한다.3. 화물을 싣지 못한 트럭이 있을 수도 있고, 남는 화물이 있을 수도 있다.4. 트럭은 하나의 컨테이너만 실을 수 있다. 문제 풀기 전 결정 사항이 문제는 그리디 알고리즘에 해당하는 문제이다.많은 양을 적재할 수 있는 트럭이 가장 무거운 콘테이너를 들고 간다. 문제 풀이 방법 수..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 2. 23:30

Python으로 푸는 SW Expert Academy 1208. Flatten

SW Expert 아카데미 1208. Flatten 문제에서는 높은 곳의 상자를 낮은 곳에 옮기는 방식으로 최고점과 최저점의 간격을 줄이는 작업을 Python으로 구현해내려고 한다.평탄화 작업을 위해서 상자를 옮기는 작업 횟수에 제한이 걸려 있다.제한된 횟수만큼 옮기는 작업을 했을 때, 최고점과 최저점의 차이를 어떻게 구해낼 수 있을까.문제 보러 가기github에서 코드 보기 문제에서 제시한 조건1. 한 번에 한 개의 상자만 옮길 수 있다. 이 작업을 덤프라고 한다.2. 덤프 횟수는 제한이 있다.3. 가로 길이는 항상 100이며 모든 위치에서 상자의 높이는 1이상 100이하로 주어진다.4. 주어진 덤프 횟수 이내에 평탄화가 완료되면 더 이상 덤프를 수행할 수 없으므로 그 때의 최고점과 최저점의 높이 차를..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 1. 31. 23:30

Python으로 푸는 SW Expert Academy 1859. 백만 장자 프로젝트

SW Expert 아카데미 1859. 백만 장자 프로젝트 문제에서 원재는 미래에 물건의 매매가를 미리 보는 능력을 사용하여 물건을 미리 사재기를 하여 최대 수익을 얻으려고 한다. 원재가 사재기를 통해 최대 이익을 얻을 수 있도록 구입과 판매를 하는 코드를 짜려면 어떻게 해야 할까.SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제에서 제시한 조건1. N일 동안의 물건의 매매가를 예측하여 알고 있다.2. 과도한 사재기 방지를 위해 하루에 최대 1만큼 구입할 수 있다.3. 판매는 언제든지 할 수 있다. 문제 풀기 전 결정 사항- 원재가 각각의 테스트 케이스마다 예측가능한 N일은 최대 1,000,000이며 최대 N 길이의 리스트를 생성하여 최대 매매가의 index를 찾아 그 ..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 1. 29. 23:30
  • 이전
  • 1
  • 다음

사이드바

NOTICE

  • 내 맘대로 파이썬 커리큘럼
  • 삼성 SW Expert Academy 푼 문제 리스트
  • LeetCode에서 푼 문제 리스트
  • 백준에서 푼 문제 리스트
  • 정리한 알고리즘 리스트
  • 전체 보기
MORE+

CATEGORY

  • 분류 전체보기 (136)
    • Project (9)
      • pre-work (1)
      • gist (8)
    • Python (5)
      • PYCON 2019 (0)
      • python 파헤치기 (5)
      • cheat sheet (0)
      • module (0)
    • Data structure (9)
    • Algorithm (0)
    • 온라인 코딩 테스트 문제 풀이 (104)
      • 문제 풀이 전략 (1)
      • LeetCode 문제 풀이 (42)
      • 백준 문제 풀이 (33)
      • 삼성 SW Expert 문제 풀이 (26)
      • 프로그래머스 문제 풀이 (2)
      • HackerRank 문제 풀이 (0)
    • Database (6)
      • MySQL (6)
    • Network (1)
    • Tools (2)
      • Git (2)

RECENTLY

  • 최근 글
  • 최근 댓글

최근 글

최근댓글

Trackback

TAG

  • SW Expert
  • Tree
  • Dynamic Programming
  • python data structure
  • 삼성 기출 문제
  • leetcode python
  • 파이썬 자료구조
  • 삼성 코딩 테스트
  • leetcode 파이썬
  • Django tutorial
  • 백준
  • DP
  • SW Expert Academy
  • leetcode
  • python으로 푸는
MORE+

CALENDAR

«   2026/04   »
일 월 화 수 목 금 토
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

VISITOR

오늘
어제
전체
  • 홈으로
  • 방명록
  • 로그인
  • 로그아웃
  • 맨위로
SKIN BY COPYCATZ COPYRIGHT Daim's blog, ALL RIGHT RESERVED.
Daim's blog
블로그 이미지 다임하게 님의 블로그
MENU
  • 홈으로
  • 블로그소개
CATEGORY
  • 분류 전체보기 (136)
    • Project (9)
      • pre-work (1)
      • gist (8)
    • Python (5)
      • PYCON 2019 (0)
      • python 파헤치기 (5)
      • cheat sheet (0)
      • module (0)
    • Data structure (9)
    • Algorithm (0)
    • 온라인 코딩 테스트 문제 풀이 (104)
      • 문제 풀이 전략 (1)
      • LeetCode 문제 풀이 (42)
      • 백준 문제 풀이 (33)
      • 삼성 SW Expert 문제 풀이 (26)
      • 프로그래머스 문제 풀이 (2)
      • HackerRank 문제 풀이 (0)
    • Database (6)
      • MySQL (6)
    • Network (1)
    • Tools (2)
      • Git (2)
VISITOR 오늘 / 전체
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃
  • 취소

검색

티스토리툴바