본문 바로가기
반응형

구현23

BOJ 1874 - 스택 수열 / C++ 문제 링크 : https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 풀이 입력받은 숫자들은 우리가 만들고자하는 숫자들이다. 이를 배열에 저장해두고 스택을 통해 만들어야 하기 때문에 스택도 생성해준다. 조건에 따라 스택을 통해 순서대로 만들려면 배열(v)의 idx를 0부터 늘려가며 v[idx]의 수를 만들어 스택에 push해야 한다. 테스트 케이스의 예시를 보면, [4,.. 2022. 4. 8.
프로그래머스 - 행렬의 덧셈 / Swift 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/12950 코딩테스트 연습 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요 programmers.co.kr 풀이 임시 배열 tmp를 만들어 각 행의 덧셈 결과를 삽입한다. 한 행이 끝나면 정답 배열 ans에 tmp를 삽입하고 다음 행으로 넘어간다. 모든 행렬의 덧셈이 완료되면 리턴한다. 코드 func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] { var ans: [[Int].. 2022. 4. 1.
프로그래머스 - K번째수 / Swift 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 풀이 commands 배열을 돌며 array 배열을 잘라 임시 배열 tmp에 넣는다. tmp 배열을 정렬한 뒤 k번째 수를 정답 배열 ans에 넣어 리턴한다. 코드 import Foundation func solution(_ array:[Int], _ commands:[[Int]]) -> [Int] { var ans: [Int] = [] for i in commands{ var tmp: [Int] = [] for .. 2022. 3. 31.
BOJ 1913 - 달팽이 / C++ 문제 링크 : https://www.acmicpc.net/problem/1913 1913번: 달팽이 N개의 줄에 걸쳐 표를 출력한다. 각 줄에 N개의 자연수를 한 칸씩 띄어서 출력하면 되며, 자릿수를 맞출 필요가 없다. N+1번째 줄에는 입력받은 자연수의 좌표를 나타내는 두 정수를 한 칸 띄어서 www.acmicpc.net 풀이 우선, 구현에 쓰인 변수는 크게 3가지이다. 좌표(x, y) / 방향(goDown,Right,Up,Left) / 라운드(r) 이다. 달팽이의 구현을 보면 (0, 0)에서 n^2부터 시작하여 하-우-상-좌 순서로 돌게 된다. 또한, 배열을 벗어나면 안되기 때문에 각 좌표는 n을 벗어나거나 0보다 작아지면 안된다. 하지만 왼쪽으로 갈 때를 보면 0보다 작아지는 것이 아니라 1보다 작.. 2022. 3. 22.
반응형