마음만은 새내기

항상 초심을 잃지 않고 생활하겠습니다~!

프로그래밍 92

BOJ 15595번(정답 비율 계산하기) 문제 풀이

★ solved.ac 난이도 : S3 (2021년 12월 29일 기준) [문제 링크] 15595번: 정답 비율 계산하기 첫째 줄에 어떤 문제의 총 제출 횟수 N(1 ≤ N ≤ 200,000)이 주어진다. 둘째 줄부터 N개의 줄에 각 제출의 정보가 제출 번호 순서대로 주어진다. 제출 정보는 총 7가지가 공백 하나로 구분되어져 있 www.acmicpc.net [문제 분석] BOJ에서 정답률 계산 공식을 구현하는 문제 [풀이] 이 문제는 제출 정보가 주어졌을 때, 정답률을 계산하는 문제입니다. (계산 공식) 정답률 = (정답자 수) / ((정답자 수) + (각 정답자가 정답을 받기 전까지 틀린 횟수의 총 합)) * 100 (단위는 % 입니다.) 단, 정답자 계산 시 관리자 제출은 제외해야 합니다. 만약, 이를..

BOJ 1065번(한수) 문제 풀이

★ solved.ac 난이도 : S4 (2021년 12월 29일 기준) [문제 링크] 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net [문제 분석] (문제에서) 한수의 개념을 파악하고, 조건에 맞는지 파악하는 문제 [풀이] 먼저, '한수'의 개념을 정확히 파악하셔야 합니다. {정의} 양의 정수 X에 대해서 각 자릿수가 등차수열을 이루는 수 여기에서는 N이 주어졌을 때, N 이하의 한수의 개수를 세는 문제입니다. (여기에서 N의 범위는 1,000 이하입니다.) 여기에서 1,000은 한수가 아니므로 잠시 접어두시고,..

BOJ 채점 환경과 비슷하게! Ubuntu에 컴파일러 설치하기

안녕하세요~!제가 BOJ에서 문제를 풀면서, 채점 환경이 Ubuntu라는 것을 알게 되었어요...그래서!! 이번에는, BOJ 채점 환경과 유사하게 Ubuntu를 설치했다고 가정하고, 각종 컴파일러를 설치해보겠습니다. Ubuntu를 아직 설치하지 않으셨다면, 설치 ISO 이미지 파일이 필요한데요,현재 최신 버전은 18.04 LTS이지만, 여기에서는 채점 환경에 맞추어 16.04 LTS로 설치하겠습니다.(여기에서 LTS는 long-term support의 약자로, 장기 지원을 의미합니다. 반드시!! LTS로 설치해주세요!!)[Ubuntu Desktop 16.04.5 LTS 64비트 다운로드](위 링크는 국내의 Kakao 미러 사이트 링크입니다.) 이제부터 필자가 주로 사용하는 컴파일러를 설치해보겠습니다.(컴..

BOJ 11921번(0.1) 문제 풀이

[문제 링크] 11921번: 0.1 첫째 줄에 수의 개수 N = 5,000,000 이 주어진다. 둘째 줄부터 N개의 줄에는 자연수가 한 줄에 하나씩 주어진다. 입력으로 주어지는 자연수는 10,000,000보다 작거나 같은 자연수이다. www.acmicpc.net [문제 분석] 더 빠른 입력 함수를 고민해보는 문제 [풀이] 여기에서 scanf를 사용한다면, 시간 초과를 받을 수 있습니다. 또한, 시간 초과가 아니더라도, 100점 만점을 못받겠죠... 그래서!! 더 빠른 방식을 알려드리고자 합니다. (필자도 종종 사용하는 방법!!) 바로!! BOJ Blog에도 나와있듯이, fread를 사용하는 방법입니다. [fread 함수 원형 및 사용법] fread(void *buffer, size_t elementSiz..

BOJ 1918번(후위표기식) 문제 풀이

★ solved.ac 난이도 : G3 (2021년 12월 29일 기준) [문제 링크] 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 알파벳 대문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 www.acmicpc.net [문제 분석] 스택을 활용한 수식 변환 문제 [풀이] 이 문제는, (사람이 주로 사용하는) 중위 수식을 후위 수식으로 바꾸는 문제입니다. 이 문제도 자료구조를 예습하면서 접하게 된 문제인데요, 여기에서도 LIFO(후입선출)의 스택을 사용했습니다. 후위 수식은, 컴파일러가 주로 사용하는 수식 형태로, 연산자가 피연산자의 뒤에 나오는 수식입니다. 또한, 괄호 없이 우선순위를 반..