구현 156

[백준18198] Basketball One-on-One [Python]

풀이 Alice 와 Barbara가 번걸아가면서 진행한 농구게임에 대한 정보가 주어진다. 중간에 게임이 끝나는 경우는 없기 때문에, 양쪽의 점수를 모두 다 더해준 후 최종점수를 기준으로 누가 이겼는지 출력해주면 된다. 소스코드 소스코드 보기 출처 18198번: Basketball One-on-One The input consists of a single line with no more than 200 characters: the record of one game. The record consists of single letters (either A or B) alternating with single numbers (either 1 or 2), and includes no spaces or other e..

[백준 17863] FYI [Python]

풀이 입력받은 전화번호의 prefix number가 555이면 "YES"를, 아니면 "NO"를 출력하면 되는 문제이다. 소스코드 소스코드 보기 출처 17863번: FYI In the United States of America, telephone numbers within an area code consist of 7 digits: the prefix number is the first 3 digits and the line number is the last 4 digits. Traditionally, the 555 prefix number has been used to provide directory informatio www.acmicpc.net

[백준 9782] Median [Python]

풀이 주어지는 데이터의 개수가 0일 때까지, 데이터 개수의 홀짝 여부에 맞게 데이터들의 중앙값을 출력해주면 된다. 문제에서 구해야 하는 중앙값은 아래의 조건에 따라 구할 수 있다. n이 홀수인 경우, 중앙값은 (n+1)/2의 위치에 있는 데이터이다. n이 짝수인 경우 중앙값은 n/2 와 (n/2)+1 위치에 있는 데이터의 평균값이다. 배열의 인덱스가 0부터 시작한다는 점과 주어진 형식에 맞게 출력해야 한다는 점을 유의해 문제를 풀자. 소스코드 소스코드 보기 출처 9782번: Median ค่ามัธยฐาน หรือ Median คือค่ากึ่งกลางของกลุ่มข้อมูลที่เรียงลําดับ นั่นคือจํานวนข้อมูลที่น้อย www.acmicpc.net

[백준 27239] Шахматная доска [Python]

풀이 주어진 수에 맞는 행과 열을 출력하면 된다. 8 x 8 크기이므로 다음처럼 8의 몫과 나머지의 특징을 이용해 쉽게 답을 구할 수 있다. (n - 1) % 8 의 나머지는 모든 n에 대해 0 ~ 7의 index와 같다. (n + 7) // 8 의 몫은 모든 n에 대한 " 8의 비 + 1 " 과 같다. 소스코드 소스코드 보기 출처 27239번: Шахматная доска Саша пронумеровала клетки шахматной доски, начиная с левого нижнего угла (клетки a1) по горизонталям сверху вниз, внутри горизонтали слева н www.acmicpc.net

[백준 11050] 이항 계수 1 [C]

풀이 C(N, K)에 대해 N의 범위는 1 ~ 10, K의 범위는 0 ~ N이므로 단순 계산으로 풀이할 수 있다. C(N, K) = N! / (K! * (N - K)! N! = N * (N - 1) * (N - 2) * ... * 1 (N - K) ! = (N - K) * (N - K - 1) * (N - K - 2 ) * ... * 1 이때, N의 sub factorial과 K! 을 구해서 나누어주면 곱셈 횟수를 줄일 수 있다. ex) N = 5, K = 2 5 4 3 2 1 2 1 3 2 1 소스코드 소스코드 보기 출처 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net

[백준 10800] 컬러볼 [C]

풀이 i번째 공이 잡을 수 있는 크기는 i번째 공보다 크기가 작고, 색상이 다른 공들의 합이기 때문에, 입력받은 공들을 공의 크기, 색별로 정렬을 해주었다. 출력순서는 입력순서와 동일해야 하므로, 정렬된 정보들에 대해 index별로 담아 줄 수 있는 배열들을 사용했다. for (int i = 0; i < N; i++){ scanf("%d %d", &b[i].color, &b[i].size); b[i].idx = i; } qsort(b, N, sizeof(Ball), compare); int sum_all = 0; for (int i = 0; i < N; i++){ int s = b[i].size, c = b[i].color, idx = b[i].idx; sum_all += s; same_color[c] ..