728x90

풀이 21

삼성기출, 백준 23288 주사위 굴리기2 파이썬 코드/풀이

한시간 정도 잡고 풀었는데 한시간 반 걸렸다. 예제에 안되는 문제가 있어서 디버깅 해보니까 주사위 돌리는 과정에서 딥카피가 안돼서 오류가 나고 있었다. 해당 부분 for문으로 값을 넣어줘서 딥카피로 해결했다. 총 4개 함수를 만들어서 풀었다. 1. 이동 방향 결정 + 주사위 모양 바꾸기 2. 주사위가 이동하는 부분의 좌표 확인 3. 좌표 확인시 뒤로 되돌아가는 경우 이동방향 재결정 및 주사위모양 다시바꾸기 4. 점수계산 N, M, total = map(int, input().split()) grid = [] for i in range(N): grid.append(list(map(int, input().split()))) dice = [[0 for i in range(3)] for j in range(4)..

행렬 테두리 확인하기 풀이/코드 (파이썬) 쉬운데 어렵게 푼 문제 LV2

코드만 궁금한 분은 깃허브 링크 눌러주세요! GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr 전체 행의 갯수, 열의 갯수가 주어진다. 이 때 해당 행렬은 맨 왼쪽 위부터 1, 2, 3 ,4 ,5 ,6 ..이런식으로 증가하는 행렬로 정의된다. 이후 이 안에 있는 ..

백준 17281 ⚾ 문제 코드/해설 (파이썬), 구현 문제, 삼성 A형 기출

으악 푸는데 엄청 오래걸렸다...ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 나.....삼성갈수있을까 문제 코드만 궁금한 분은 깃허브 링크 눌러주세요 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 17281번: ⚾ ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종 www.acmicpc.net 엄청 어려운 문제는 아닌데 ... 딱 봐도 구현이 귀찮아보여서 풀기가 영... 그런 문제이다. 문제 ..

소프티어 21년 재직자 대회 예선 문제 풀이/코드 파트1 (파이썬)

한동안 소프티어 문제를 안 풀어보고 있엇는데, 이제 찐 취준 시즌이 다가오고있어서 현대차 문제좀 다시 익혀볼까 싶어서 간만에 소프티어에 들어갔다. 많은 문제들이 추가됐는데, 사실 소프티어 자체가 해답을 볼 수 있는 곳이 거의 없어서 일단 좀 쉬운 문제들..위주로 풀어봤다. 이번 글에서 다룰 문제는 총 세개인데, 비밀메뉴 문제, 전광판 문제, 이미지 프로세싱 문제 이렇게 세개이다. 사실 이 세 문제는 코딩테스트 연습 좀 했다- 하는 사람이라면 거의 다 풀 수 있는 문제라서 블로그에 업로드를 할까~ 말까~ 고민을 했는데 , 간략하게라도 올려야겠다고 생각했다. 첫번째, 비밀 메뉴. 별 두개짜리, 정답률은 36%이다. 해설 코드만 궁금한 분은 깃허브 링크 눌러주세요! GitHub - Rhyankwon/algor..

백준 6987 월드컵 문제 해설(파이썬), dfs/시뮬레이션 연습 문제

해설 코드만 궁금한 분은 깃허브 링크 눌러주세요~ GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 문제 이해는, 거의 항상 그렇듯, 쉽다. 총 6개 팀이 리그전 느낌으로 모든 팀과 각각 승부를 겨루게 되는데, 이미 결과가 모두 나온 상태로 입력값이 주어진다. 각 6 팀의 승, 무, 패가 기록되어 총 18개의 숫자가 4줄 입력되어 매 줄마다 가능한 결과인지 불가능한 결과인지를 1, 0으로 출력하면 된다. 문제 해결 논리 모든 케이스를 해봐야한다. A팀이 B팀에 대해서 이긴/비긴/진 경우 -> A팀이 C팀에 대해서 이긴/비긴..

백준 16113 파이썬 풀이, 코드 (시뮬레이션 문제!)

코드만 궁금한 분은 깃허브 링크 눌러주세요! 개인적으로 시뮬레이션 문제들은 일반적으로 한시간정도는 구현하는데에 시간이 소요되는 것 같다. 지금도 뭐 풀만한것같아서.. 풀어봤는데 한시간 걸림..ㅡㅜ 문제 설명 문제 해결 논리 맨 윗쪽 줄의 맨 왼쪽 값부터 시작한다. 만약 현재값이 '#'이면 해당칸을 포함해서 3열 * 5행만큼의 칸이 어떤 수인지 확인한다. 만약 해당 값이 1이면 오른쪽으로 2칸만 움직이고, 그 외의 값은 3칸씩 모두 사용하므로 4칸을 옮겨서 다시 그 값이 '#'인지 확인한다. 공백이 1칸 이상이므로 만일 해당 값이 ' . ' 이면 오른쪽으로 1칸만 움직인다. 맨 마지막 혹은 그 앞쪽 열에 1이 들어가는 경우 3열 * 5행만큼의 칸이 확보되지 않으므로 그런 경우는 오른쪽 끝에 ' . '을 붙..

백준 2290 LCD Test 풀이 (파이썬) 시뮬레이션 연습하기

코드만 궁금한 분은 깃허브링크 눌러주세요~ GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 숫자를 입력받아 마치 LCD시계에 표시하듯 표시하면 되는 문제이다. 딱봐도 슬라이싱만 잘 활용하면 되는 문제. 문제 해결 논리 흠 논리랄게 있나? 위에 설명한대로 슬라이싱만 잘 하면 되는데, 딱 봐도 구현문제라 그냥 더럽게 푸는게 맞다. 나같은 경우는 8을 봤을때 맨위, 가운데, 맨아래의 '--'부분과 윗쪽의 좌-우 '|' 부분, 아랫쪽의 좌-우 '|' 부분 이렇게 총 7군데를 나눠서 풀었다. 숫자별로 출력 크기는 다르게될지 몰라도..

백준 12869 뮤탈리스크 풀이 (파이썬) dfs는 안되고 bfs는 되는 dp문제

코드만 궁금한 분은 깃허브 링크 눌러주세요..! 일단 나는 이 문제를 처음에 dfs로 풀었었다. 근데 아무리 해도 안돼서;(특히 25%에서 계속 안됨) 이유를 생각해봤다. 문제에서 경우의수가 너무 많은 만큼 dp로 3차원 리스트를 만들어서 이미 확인한 경우는 확인 안 하는 식으로 해서 문제를 풀어야 한다. 근데 이 때 이미 확인 안하는 것은, 이전에 확인한게 최선이라는 확답이 있는 경우에만 가능하다. 그런데 dfs로 문제를 풀면 그때까지의 계산 횟수가 얼마이든간에 우선적으로 많은 부분을 방문하게 되고, 이후에 계산 횟수가 더 적게 같은 상태에 도달할 수 있더라도 그 부분을 방문하지 않아버림으로 인해 오류가 나게 된다. dfs라도 방문/비방문 리스트가 아니라 어떤 값의 쌍까지 오는데에 걸린 계산횟수를 저장..

프로그래머스 아이템 줍기 풀이/해설 (파이썬) 간단한 코드! + 잡담

코드만 궁금한 분은 깃허브링크 눌러주세요! GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 구현과 달리 문제는 간단하다. 여러개의 직사각형이 겹쳐져있는데 그 바깥쪽 라인만 따라서 한 지점에서 다른지점에서 이동하는데 그 최솟값을 리턴해야한다. 길이 하나로 연결돼있기때문에 경로는 총 두개가 나오고 그 중에 짧은거를 리턴하면 된다. 내가 생각한 문제 해결 논리 1. 그림에서 보면 알겠지만, 사각형들의 테두리가 다른 사각형과 겹치지 않은 경우, 그리고 테두리끼리 겹친 경우에는 합쳐진 도형의 바깥쪽 길로서의 역할을 한다. 그리고 테두리..

프로그래머스 10주차 교점에 별 만들기 풀이/코드 (파이썬)

코드만 궁금한 분은 깃허브링크 눌러주세요! GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 문제는 간단하다. ax+by+c = 0 꼴의 방정식을 이루는 a,b,c 쌍들이 주어지고 모든 방정식의 교점을 구해 그 중 정수의 x좌표 y좌표를 갖는 경우에 한해서 * 처리를 하고 나머지 범위는 모두 '.' 을 입력한다. 이 때, 모든 별을 포함하는 가장 작은 직사각형 만큼은 '.'을 찍어야하고, 이 때 위와같이 문자열 리스트를 만들어서 리턴해야한다. 요새 백준만 풀다보니까 리턴하는게 어색했달까 아무튼 문제 해결 논리 1. for문을 통..

728x90