본문 바로가기

구현7

[백준/C,C++] 10993번: 별 찍기 - 18 https://www.acmicpc.net/problem/10993 10993번: 별 찍기 - 18 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 풀이 위 그림처럼 별을 찍으면 되는 문제입니다. 재귀를 이용해 별을 찍는 문제들에서 배열에 값을 저장한 후 찍는 것이 아닌 해당 좌표에 '*' 이 출력돼야 하는지 공백이 출력돼야 하는지 바로 판단하여 출력하는 식으로 함수를 구현하려고 했고, 이번 문제 또한 배열을 쓰지 않는 방법으로 해결하였습니다. 가장 큰 삼각형 단계부터 가장 작은 삼각형 단계까지 재귀 호출합니다. 해당 좌표가 현재 삼각형 단계에서 '*' 로 출력될 자리인지 판단하고 아니라면 다음으로 작은 삼각형 단계로 재귀 호출하는데, 1 크기의 삼각형이 될 때까지 '*'.. 2021. 5. 18.
[백준/C,C++] 2875번: 대회 or 인턴 www.acmicpc.net/problem/2875 2875번: 대회 or 인턴 첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N), www.acmicpc.net 풀이 여학생의 수 N, 남학생의 수 M, 인턴쉽에 참여해야 하는 인원 K가 주어졌을 때, 인턴쉽에 참여해야 하는 인원을 고려하기 전 만들 수 있는 최대의 팀 수는 min(n / 2, m) 입니다. 여기서 잉여 인원은 학생 수에서 팀에 포함되는 학생 수(최대의 팀 수 * 3)를 빼주면 되겠죠.. K가 잉여 인원보다 작을 땐 문제가 되지 않습니다. 어차피 최대의 팀 수에는 영향을 끼치지 못하기 때문이죠. K가 잉여 인원보다 클 때 빠져야 하는 인원수는 K - 잉여인원입니다. 최대의 .. 2021. 4. 20.
[백준/C,C++] 2740번: 행렬 곱셈 www.acmicpc.net/problem/2740 2740번: 행렬 곱셈 첫째 줄에 행렬 A의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 순서대로 주어진다. 그 다음 줄에는 행렬 B의 크기 M과 K가 주어진다. 이어서 M개의 줄에 행렬 B의 원소 K개 www.acmicpc.net 행렬 곱을 구현하면 되는 문제입니다. A가 $\begin{pmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{pmatrix}$, B가 $\begin{pmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{pmatrix}$ 라고 가정했을 때 두 행렬의 곱은 $\begin{pmatrix} a_{11}b_{11}+a_{12}b_{2.. 2021. 3. 26.
[백준/C,C++] 5430번: AC www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 정말 풀기 짜증 났던 문제입니다.. 문제의 요지는 R과 D 함수의 내용에 대해 있는 그대로 코딩을 하면 안 됩니다. 시간 초과 때문에 뒤집은 것처럼 원소에 대해 접근하거나 출력해주면 됩니다. 그리고.. 배열을 입력받을 때, 숫자가 3자리까지 입력될 수 있기 때문에 문자 하나하나를 비교해서 배열로 바로 입력해버리면 안 됩니다. 예제 입력으로는 배열의 원소들이 전부 1자리이기 때문에 이런 반례를 발견하기 쉽지 않습니다. 문제 자체의 구현은 어렵지 않으나, 자잘한 실수를 .. 2021. 3. 16.