본문 바로가기

Algorithm

(2139)
(C++, Rust) - 백준(BOJ) 23808 : 골뱅이 찍기 - ㅂ https://www.acmicpc.net/problem/23808 23808번: 골뱅이 찍기 - ㅂ 서준이는 아빠로부터 골뱅이가 들어 있는 상자를 생일 선물로 받았다. 상자 안에는 ㅂ자 모양의 골뱅이가 들어있다. ㅂ자 모양은 가로 및 세로로 각각 5개의 셀로 구성되어 있다. 상자에는 정사 www.acmicpc.net 출력 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 기준점 n을 선언 후 입력받습니다. 📔 풀이과정 ㅂ을 출력하는데 있어서 두 가지 유형이 반복 출력되는 것을 볼 수 있습니다. 1. 가운데가 공백으로 빈 영역 2. 가운데가 차 있는 영역 이 부분을 출력하는 함수를 두 개 구현해줍니다. 📔 정답출력 형식에 맞게 구현한 두 함수를 적절히 호출해 출력합니다. 📕 Code 📔 C++ #includ..
(C++) - 백준(BOJ) 25591 : 푸앙이와 종윤이 https://www.acmicpc.net/problem/25591 25591번: 푸앙이와 종윤이 베다수학 곱셈법을 쓰는 과정에서 구하는 $a$, $b$, $c$, $d$, $q$, $r$을 첫 줄에 공백으로 구분해서 출력한다. 둘째 줄에 곱셈 결과의 앞의 두 자릿수, 뒤의 두 자릿수를 공백으로 구분해서 출력한다. www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 두 양의 정수와 정답을 출력할 변수들을 선언한 후 적절히 입력받습니다. 📔 풀이과정 조건에 따라 각 변수 a, b, c, d, q, r에 계산 결과를 저장합니다. 📔 정답출력 형식에 맞게 출력합니다. 📕 Code #include using namespace std; int n1, n2, a, b, c, d, ..
(C++, Rust) - 백준(BOJ) 25625 : 샤틀버스 https://www.acmicpc.net/problem/25625 25625번: 샤틀버스 3년만에 열리는 대면 SNUPC를 위해서, 민준이는 제2공학관으로 가고자 한다! 제2공학관에 가는 버스는 여러 가지가 있다. 관악02, 5511, 5513, 5516... 어떤 버스를 타더라도 단점이 있는데, 그것은 바로 www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 서울대입구역에서 제 2공학관으로 버스가 이동할 때 소요시간과 제 2공학관으로 이동하기까지의 소요시간을 입력 받습니다. 📔 풀이과정 x, y를 각각 다음과 같이 생각해봅니다. x는 설대역에서 제 2공학관까지 소요시간, 반대편(제 2공학관)으로 도착하는데 걸리는 시간 y. 경우는 두 가지로 나눠집니다. 1. x > ..
(C++, Rust) - 백준(BOJ) 25600 : Triathlon https://www.acmicpc.net/problem/25600 25600번: Triathlon 트라이애슬론(Triathlon)이란 라틴어에서 $3$가지라는 의미를 가진 tri와 경기를 뜻하는 athlon의 합성어이다. 우리나라에서는 트라이애슬론 대신 철인 3종 경기로 알려져 있다. 트라이애슬론은 여러 www.acmicpc.net 간단한 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 참가자 수와 각 참가자의 점수에 대한 변수를 선언 후 입력받습니다. 📔 풀이과정 매 참가자마다 점수를 a * (d + g) 공식으로 구합니다. a = (d + g) 라면 구한 점수에 2배를 곱해줍니다. 📔 정답출력 구한 점수들 중 가장 큰 값을 출력합니다. 📕 Code C++ #include using namespa..
(C++) - 백준(BOJ) 15923 : 욱제는 건축왕이야!! https://www.acmicpc.net/problem/15923 15923번: 욱제는 건축왕이야!! 건축학개론을 수강한 욱제는 선린의 매점 앞에 지어질 새로운 건물의 설계를 맡았다. 욱제는 건축학개론 수업에서 수지를 만나 행복하지만, C-를 받을 정도로 건축에 소질이 없다. 컴퓨터학부에 www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 좌표 구조체 Point, 이를 vector형태로 받는 v, 좌표개수 n, 정답을 출력할 ans를 선언 후 입력받습니다. 📔 풀이과정 좌표 A(a, b), B(c, d)의 선분 AB는 다음 공식으로 구할 수 있습니다. $$ sqrt((a-c)^2 + (d - b)^2) $$ v를 순회하며 모든 둘레 선분의 길이를 구해 ans에 더해줍니..
(C++, Rust) - 백준(BOJ) 15351 : 인생 점수 https://www.acmicpc.net/problem/15351 15351번: 인생 점수 어떤 사람이 무엇을 즐기느냐에 따라 그 사람의 인생 점수를 측정할 수 있다. A를 1점, B를 2점, ... , Z를 26점으로 해, 즐기는 것의 이름의 알파벳 점수를 모두 더하면 된다. 예를 들어, "OTAKU LIFE" 는 www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 사람 수 n, 점수를 출력할 score를 선언 후 적절히 입력받습니다. 📔 풀이과정 📑 C++ 아스키 코드표에 있는 알파벳 대문자의 문자열들은 가장 초기의 대문자인 'A'를 뺐을 때 자료형이 int로 변환됩니다. 이특성을 이용해 각 문자가 알파벳인 경우 변환해 score에 누적해줍니다. 📑 rust as ..
(C++, Rust) - 백준(BOJ) 23303 : 이 문제는 D2 입니다. https://www.acmicpc.net/problem/23303 23303번: 이 문제는 D2 입니다. 문자열 안에 $D2$나 $d2$가 들어있다면 D2를 출력한다. 두 글자는 반드시 붙어있어야 하며, $D$/$d$와 $2$ 사이에 공백이 있어도 안 된다. 만약 문자열 안에 해당 문자가 없다면 unrated를 출력한다. www.acmicpc.net 문자열을 찾는 find함수를 써보는 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 한줄 s를 선언 후 입력받습니다. 📔 정답출력 find함수의 결과값이 유의미 할 때 D2를, 하지 않을 때 unrated를 정답으로 출력합니다 📕 Code C++ #include using namespace std; string s; int main(){ getline(cin..
(C++, Rust) - 백준(BOJ) 23802 : 골뱅이 찍기 - 뒤집힌 ㄱ https://www.acmicpc.net/problem/23802 23802번: 골뱅이 찍기 - 뒤집힌 ㄱ 서준이는 아빠로부터 골뱅이가 들어 있는 상자를 생일 선물로 받았다. 상자 안에는 뒤집힌 ㄱ자 모양의 골뱅이가 들어있다. 뒤집힌 ㄱ자 모양은 가로 및 세로로 각각 5개의 셀로 구성되어 있다. www.acmicpc.net 간단 출력문제였습니다. 📕 풀이방법 📔 입력 및 초기화 n을 선언 후 입력 받습니다. 📔 정답출력 2중 for loop를 수행하며 규칙에 맞게 출력합니다. 📕 Code C++ #include using namespace std; int n; int main(){ cin >> n; for(int i = 0; i < n; i++) { for(int j = 0; j < n * 5; j++..