본문 바로가기

반응형

분류 전체보기

(395)
[BOJ] 백준 11050 이항 계수 1 (Swift) 문제 https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 풀이 이항계수란 뭘까요? $(x + y)^5 = x^5 + 5x^4y + 10x^3y^2 + 10x^2y^3 + 5xy^4 + y^5$ 입니다. 이항계수는 다항식의 거듭제곱을 정리하였을 때, $x^{n-k}y^{k}$의 계수를 뜻합니다 n이 5, k가 2라면? $10x^3y^2$ 이므로 10이겠죠?? 또한, 이항계수는 $\frac{n!}{k!(n-k)!}$으로 구할 수 있습니다. 이 수식을 이용하면 답을 구할 수 있습니다. 소스코드 후기 이항 계수가 뭔지 몰라서.. ..
[BOJ] 백준 15439 Vera and Outfits (Swift) 문제 https://www.acmicpc.net/problem/15439 15439번: Vera and Outfits Vera owns N tops and N pants. The i-th top and i-th pants have colour i, for 1 ≤ i ≤ N, where all N colours are different from each other. An outfit consists of one top and one pants. Vera likes outfits where the top and pants are not the same colour. www.acmicpc.net 풀이 문제를 해석해보면 상의, 하의를 다른 색으로 입는 조합의 경우를 구하는 문제입니다. 예를 들어 N이 3이라면,..
[BOJ] 백준 20920 영단어 암기는 괴로워 (Swift) 문제 https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 풀이 우선순위를 적용하여 정렬하는 문제입니다. Swift에서의 sorted 또는 sort 메서드를 사용하여 적용하면 됩니다. 자주 나오는 단어를 체크하기 위해 단어를 key로 나온 횟수를 Value로 갖는 빈 Dictionary를 생성해주었습니다. 만약 m보다 짧은 길이라면 Dictionary에 추가하지 않고, m 이상의 길..
[BOJ] 백준 26069 붙임성 좋은 총총이 (Swift) 문제 https://www.acmicpc.net/problem/26069 26069번: 붙임성 좋은 총총이 첫번째 줄에는 사람들이 만난 기록의 수 $N\ (1 \le N \le 1\ 000)$이 주어진다. 두번째 줄부터 $N$개의 줄에 걸쳐 사람들이 만난 기록이 주어진다. $i + 1$번째 줄에는 $i$번째로 만난 사람들의 이름 $A_i$ www.acmicpc.net 풀이 무지개 댄스는 총총이가 추고 있습니다. 무지개 댄스를 추는 사람을 만나게 되면 무지개 댄스를 추게 됩니다. 그래서 총 무지개 댄스를 추는 사람의 수를 구하는 문제인데, 어떻게 구할 수 있을까요? 저는 무지개 댄스를 추는 사람들을 담을 Set 자료형을 떠올렸습니다. 맨 처음에는 ChongChong만 담고 있습니다. 그 이후 n개의 사람들..
[BOJ] 백준 25192 인사성 밝은 곰곰이 (Swift) 문제 https://www.acmicpc.net/problem/25192 25192번: 인사성 밝은 곰곰이 첫번째 새로운 사람이 들어온 뒤 pjshwa, chansol, chogahui05은 모두 곰곰티콘으로 인사했다. 두번째 새로운 사람이 들어온 뒤 pjshwa와 chansol은 다시 곰곰티콘으로 인사했다. www.acmicpc.net 풀이 "ENTER"는 새로운 사람이 채팅방에 입장하게 된 경우이고, 새로운 사람이 채팅방에 입장한 이후 처음 채팅을 입력할 때 곰곰티콘을 사용합니다. 곰곰티콘을 사용된 횟수를 구하는 문제입니다. 저는 닉네임을 담을 Set 자료형을 떠올렸습니다. Set 자료형에 해당 닉네임이 없다면, 처음 채팅을 치는 것이므로 곰곰티콘을 사용할 것이고 닉네임이 있다면, 이미 채팅을 쳤기 ..
[BOJ] 백준 24723 녹색거탑 (Swift) 문제 https://www.acmicpc.net/problem/24723 24723번: 녹색거탑 Naver D2를 아시나요? D2는 For Developers, By Developers의 약자로, 개발자들을 위해 개발자들이 직접 만들어 가고 있는 네이버 개발자 지원 프로그램입니다. 네이버가 축적한 기술과 지식을 공유하고, 외 www.acmicpc.net 풀이 1칸씩 내려올 때마다 경로가 2개씩 생기게 됩니다. 즉, 경로는 $2^n$ 개 입니다. 시프트연산자를 사용하여 출력할 수도 있고.. for문을 사용하여 2를 제곱할 수도 있고.. Foundation 라이브러리에 있는 pow 메서드를 사용해도 됩니다. 소스코드 후기 경우의 수가 2의 제곱이 된다는 것을 안다면 쉽게 풀 수 있습니다.
[BOJ] 백준 2578 빙고 (Swift) 문제 https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net 풀이 5 * 5 개의 빙고판에서 빙고가 되는 경우가 어떤 경우인지 생각해봅시다. 가로로 모든 수가 지워진 경우 세로로 모든 수가 지워진 경우 대각선 이 3가지 경우입니다. 먼저, 5 * 5의 Bool 자료형의 2차원 배열을 false로 초기화해줍시다. 그 이후, 숫자를 key, 숫자의 좌표가 value인 Dictionary를 생성해주었습니다. 이제 빙고판에 쓰여진 수를 지울 때, 수를 입력받고, Dicti..
[BOJ] 백준 10157 자리배정 (Swift) 문제 https://www.acmicpc.net/problem/10157 10157번: 자리배정 첫 줄에는 공연장의 격자 크기를 나타내는 정수 C와 R이 하나의 공백을 사이에 두고 차례대로 주어진다. 두 값의 범위는 5 ≤ C, R ≤ 1,000이다. 그 다음 줄에는 어떤 관객의 대기번호 K가 주어진다. www.acmicpc.net 풀이 가로와 세로 길이에 따른 규칙을 구할 수는 없었습니다. 가로 세로가 최대 1,000 이므로 1,000 * 1,000 = 1,000,000으로 완전탐색으로 시간내에 풀이할 수 있다고 생각해 직접 좌석을 배정해 주는 방식으로 풀어야겠다고 생각이 들었습니다. 대기번호가 가로 * 세로 보다 크다면, 좌석을 배정할 수 없는 경우입니다. 아니라면, 2차원 배열을 사용하여 0,0 부..

반응형