목록알고리즘 문제 풀이 (61)
굥뷰를 햡시댜

https://programmers.co.kr/learn/courses/30/lessons/42894 코딩테스트 연습 - 블록 게임 | 프로그래머스 [[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,4,0,0,0],[0,0,0,0,0,4,4,0,0,0],[0,0,0,0,3,0,4,0,0,0],[0,0,0,2,3,0,0,0,5,5],[1,2,2,2,3,3,0,0,0,5],[1,1,1,0,0,0,0,0,0,5]] 2 programmers.co.kr 출제자의 의도가 무엇인지는 모르겠지만 야매로 풀 수 있는 문제. 내가 푼 방법은 통과는 했지만 정해는 아니라고 생각한다. 문제에서 ..
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeRZV6kBUDFAVH&categoryId=AWIeRZV6kBUDFAVH&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 위 사이트에 로그인 하시면 문제를 볼 수 있습니다. 백준에도 괄호 추가하기라고 이 문제와 유사한 문제가 있다. 내 기억으로는 19년 8월 A형 역량 테스트 문제와 아주 유사하다고 들었다. 이런 류의 문제는 dfs로 백트래킹 하면서 완전탐색을 하면 된다. 크게 어렵지는 않았다. - 풀이 방법 1. 입력을 받는다. 2. ..
https://www.acmicpc.net/problem/16637 16637번: 괄호 추가하기 길이가 N인 수식이 있다. 수식은 0보다 크거나 같고, 9보다 작거나 같은 정수와 연산자(+, -, ×)로 이루어져 있다. 연산자 우선순위는 모두 동일하기 때문에, 수식을 계산할 때는 왼쪽에서부터 순서대로 계산해야 한다. 예를 들어, 3+8×7-9×2의 결과는 136이다. 수식에 괄호를 추가하면, 괄호 안에 들어있는 식은 먼저 계산해야 한다. 단, 괄호 안에는 연산자가 하나만 들어 있어야 한다. 예를 들어, 3+8×7-9×2에 괄호를 3+(8×7)-(9× www.acmicpc.net 이런 류의 문제를 처음 접해보면 어렵게 느껴질수도 있다. 이런 류의 문제를 프로그래머스에서 스타트업 인턴을 모집하는 코딩테스트였..
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5VwAr6APYDFAWu&categoryId=AV5VwAr6APYDFAWu&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com SW Expert Academy 사이트에 로그인 하면 위 링크로 접속해서 문제를 볼 수 있습니다. 개인적으로 이런 류의 문제는 조금 당황스러웠다. 사실 처리해줘야 할 것들은 별로 없지만 대각선 이동이라는 문제가 평소와는 다르게 신선(?)하게 다가왔다. 한 번 풀어봤던 문제임에도 불구하고 꽤 많은 시간이 걸렸으며 좀 더..
https://www.acmicpc.net/problem/17406 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 값은 4이다. 1 2 3 2 1 1 4 5 6 배열은 회전 연산을 수행할 수 있다. 회전 연산은 세 정수 (r, c, s)로 이루어져 있고, 가장 왼쪽 윗 칸이 (r-s, c-s), 가장 오른쪽 아랫 칸이 (r+s, c+s)인 정사각형을 시계 www.acmicpc.net 문제를 똑바로 읽는 습관을 들이도록 하자.. 이 문제의 가장 중요한 부분은 가장 밑에 두 줄이다... 배열 A와 사용 가능한 ..
https://www.acmicpc.net/problem/17281 17281번: ⚾ ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종료되고, 두 팀이 공격과 수비를 서로 바꾼다. 두 팀은 경기가 시작하기 전까지 타순(타자가 타석에 서는 순서)을 정해야 하고, 경기 중에는 타순을 변경할 수 없다. 9번 타자까지 공을 쳤는데 3아웃이 발생하지 않은 상태면 이닝은 끝나지 않고, 1번 타자가 다시 타석에 www.acmicpc.net 개인적으로 조금 어려웠던 문제였다 내가 해결하는데 어려움을 겪었던건 1. 순열을 찾는 것 2. 4번 타자를 1번 선수로 고정시키는 것 3. ..
https://www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net 삼성 기출문제이다. 상당히 쉬운 난이도의 시뮬레이션 문제였다. 주의할 점은 출력할 때의 값이 크기 때문에 long long으로 받아와서 출력해야한다. - 풀이 방법 1. 입력을 받는다. 2. 총감독관은 1명이기 때문에 총감독관이 감시할 수 있는 인원수를 해당 시험장의 인원에서 빼준다. 3. 부감독관의 경우 여러명이 올 수 있다. 그래서 부감..
https://programmers.co.kr/learn/courses/30/lessons/42891 코딩테스트 연습 - 무지의 먹방 라이브 | 프로그래머스 programmers.co.kr 일단 결과부터 말하면 정확성 부분만 통과했다. 효율성까지 고려해서 풀어보려고 했지만 아이디어는 생각났는데 구현을 못했다. 결국 정확성 부분만 풀고 다른 사람의 풀이를 확인했더니 내 아이디어랑 일치해서 조금 놀랐다. 그건 그 사람의 풀이고 일단 내가 정확성 부분만 통과한 풀이방법에 대해 설명해보려고 한다. - 풀이 방법 1. 가장 먼저 입력으로 들어온 음식이 0이 아닐 경우부터 세줬다. (나중에 0일 경우 답이 -1이기 때문에) 2. 음식을 1씩 빼주면서 0이 될 경우 1번에서 카운트한 변수를 1씩 빼줬다. 3. 루프를..