본문으로 바로가기

Daim's blog

네비게이션

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

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

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

Python으로 푸는 SW Expert Academy 2806. N-Queen

SW Expert Academy 2806. N-Queen체스판에서 퀸은 같은 가로, 세로줄, 대각선에 위치한 체스말을 잡을 수 있다.이러한 특징을 이해하고 각 가로줄마다 퀸을 놓을 수 있는 경우의 수를 알아낼 수 있는 코드를 짜보자삼성 SW Expert Academy에서 푼 문제 보기github에서 코드 보기문제 풀이퀸을 한줄마다 놓을 때, 가로, 세로, 대각선에 위치한 퀸인지 확인한다. 맨 마지막이 될때까지 모든 퀸을 놓을 수 있으면 count를 증가시킨다.모든 경우의 수를 탐색하지만, 퀸을 놓을 수 있는 자리인지를 확인하고 놓을 수 없을 경우에 backtracking하는 방법으로 코드를 짰다.문제에서 다른 예시가 필요할 수도 있어서 아래 남겨두도록 하겠다.n = 1, output : 1n = 2, o..

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 3. 12. 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 2819. 격자판의 숫자 이어 붙이기

SW Expert Academy 2819. 문제는 격자판의 원소를 총 6번 이동하면서, 각 칸에 적힌 숫자를 차례대로 이어 붙여 만들 수 있는 7자리의 수의 갯수를 구하여야 한다.삼성 SW Expert Academy에서 푼 문제 리스트 보기github에서 코드 보기문제 조건격자판을 벗어나선 안된다.한번 거쳤던 격자칸을 다시 거쳐도 되며, 0으로 시작하는 수를 만들 수도 있다.+ 제자리 걸음을 해선 안된다.+ 만들어진 숫자가 중복 되어선 안된다.문제 풀이완전 탐색 방법으로 문제를 풀어야 한다. 격자판의 16개의 원소 각각을 시작점으로 하여 6번을 이동했을 때 나올 수 있는 모든 경우를 탐색해야 한다.단, 나올 수 있는 7자리 숫자의 모든 경우의 수를 탐색하면서도 그게 기존에 나온 숫자인지도 확인해야 한다...

온라인 코딩 테스트 문제 풀이/삼성 SW Expert 문제 풀이 2019. 2. 22. 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

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

CALENDAR

«   2025/05   »
일 월 화 수 목 금 토
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 31

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 오늘 / 전체
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃
  • 취소

검색

티스토리툴바