algorithm 59

[프로그래머스 LV.2 최솟값 만들기]

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.)..

algorithm 2023.11.02

[프로그래머스 LV.2 JadenCase 문자열 만들기]

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 s는 길이 1 이상 200 이하인 문자열입니다. s는 알파벳..

algorithm 2023.11.01

[프로그래머스 LV.2 최댓값과 최솟값]

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. 문자열 조작을 위한 함수들 중, split() 함수가 있다. 이걸 ..

algorithm 2023.10.31

[백준 Gorani Command]

문제 고라니 사육사 화랑이는 고라니 컨트롤러를 사용해 자가용 대신으로 고라니를 타고 다닌다. 고라니 컨트롤러가 있으면 고라니에게 커맨드를 사용할 수 있는데, 다음은 화랑이가 자주 사용하는 커맨드 몇 가지다. →↓↘A : 점프! ↓↑B : 백텀블링! ↓↘→A : 블루투스 발사! 다른 고라니와의 거리를 알 수 있다. ↑↑↓↓←→←→BA : 5단 합체! 고라니 배틀에서 승리한다. 화랑이는 하루에도 몇 번씩이나 커맨드를 사용했고, 이에 지친 화랑이의 고라니 한 마리가 스스로 →↓↘A점프! 커맨드를 사용해 담을 넘어 도망쳤다! 화랑이의 고라니 중 가장 서열이 높은 대장 고라니는 특식으로 최고급 화장지를 받고 도망친 고라니를 찾으러 우리를 나섰다. 대장은 야생의 직감으로 도망친 고라니가 세로 N 칸, 가로 M 칸의..

algorithm 2023.02.13

[SWEA 12051번 프리셀 통계]

※ SW expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 승진이는 지금까지 총 G 판의 프리셀 게임을 했으며, 오늘은 D 판의 프리셀 게임을 했다. 프리셀 게임에서 승진이는 이기거나 지며, 비기는 등의 일은 일어나지 않는다. 승진이는 오늘 프리셀 게임을 끝나고 통계를 열어봤는데, 흥미롭게도 오늘 한 D판 중 정확히 PD 퍼센트의 게임을 이겼고, 지금까지 한 G판 중 정확히 PG 퍼센트의 게임을 이겼다. 둘 다 반올림 된 값이 아니고, 정확히 그 만큼의 게임을 이긴 것이다. 하지만 승진이는 사실 오늘, 그리고 지금까지 몇 판의 프리셀 게임을 했는지 기억이 나지 않는다. 즉 승진이는 D, G 값이 무엇인지 모른다. 승진이가 아는 것이 단 한 가지 있는데, 그것은 오늘 많아야 N 판의 게임을 했..

algorithm 2022.12.26

[백준 2578번 빙고]

문제 링크: https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net 빙고 게임은 다음과 같은 방식으로 이루어진다. 먼저 아래와 같이 25개의 칸으로 이루어진 빙고판에 1부터 25까지 자연수를 한 칸에 하나씩 쓴다 다음은 사회자가 부르는 수를 차례로 지워나간다. 예를 들어 5, 10, 7이 불렸다면 이 세 수를 지운 뒤 빙고판의 모습은 다음과 같다. 차례로 수를 지워가다가 같은 가로줄, 세로줄 또는 대각선 위에 있는 5개의 모든 수가 지워지는 경우 그 줄에 선을 긋는..

algorithm 2022.12.22

[백준 2563번 색종이]

문제 링크: https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오. 예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 ..

algorithm 2022.12.21

[백준 2447번 별 찍기 - 10]

문제 링크: https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다.크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각형을 크기..

algorithm 2022.12.20

[백준 2012번 등수 매기기]

문제 링크: https://www.acmicpc.net/problem/2012 2012번: 등수 매기기 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다. www.acmicpc.net 2007년 KOI에 N명의 학생들이 참가하였다. 경시일 전날인 예비소집일에, 모든 학생들은 자신이 N명 중에서 몇 등을 할 것인지 예상 등수를 적어서 제출하도록 하였다. KOI 담당조교로 참가한 김진영 조교는 실수로 모든 학생의 프로그램을 날려 버렸다. 1등부터 N등까지 동석차 없이 등수를 매겨야 하는 김 조교는, 어쩔 수 없이 각 사람이 제출한 예상 등수를 바탕으로 임의로 등수를 매기기로 ..

algorithm 2022.12.19

[백준 1992번 쿼드트리]

문제 링크: https://www.acmicpc.net/problem/1992 흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단히 표현할 수 있다. 주어진 영상이 모두 0으로만 되어 있으면 압축 결과는 "0"이 되고, 모두 1로만 되어 있으면 압축 결과는 "1"이 된다. 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇게 4개의 영상으로 나누어 압축하게 되며, 이 4개의 영역을 압축한 결과를 차례대로 괄호 안에 묶어서 표현한다 위 ..

algorithm 2022.12.18