본문 바로가기

Algorithm/Implementation

(750)
(C++) - 백준(BOJ) 18398 : HOMWRK https://www.acmicpc.net/problem/18398 18398번: HOMWRK In one of the beautiful cities of Afghanistan two sisters are going to program a simple game to help them solve their mathematics homework. Their homework asks them to calculate the sum and multiplication of two numbers. Your task is to help them to build www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 간단 구현 문제였습니다. 📔 풀이과정 test case 수 t, 문제 수 ..
(C++) - 백준(BOJ) 17284 : Vending Machine https://www.acmicpc.net/problem/17284 17284번: Vending Machine 첫째 줄에 정웅이가 누른 버튼의 번호가 공백으로 사이에 두고 주어진다. 정웅이는 버튼을 한 번 이상 눌렀다. www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 button 누른 정보가 담긴 한 줄을 변수s로 선언해 입력받습니다. 이후 공백 한 칸으로 구분해 split()을 수행해줍니다. 반환값은 vector인 clickedInfo에 저장합니다. 📔 풀이과정 5000을 초과해 입력하진 않으므로 편하게 변수 sum을 선언해 clickedInfo의 원소들을 모두 더해줍니다. 📔 정답출력 5000 - sum을 출력합니다. 📕 Code #include using nam..
(C++, Rust) - 백준(BOJ) 23803 : 골뱅이 찍기 - ㄴ https://www.acmicpc.net/problem/23803 23803번: 골뱅이 찍기 - ㄴ 서준이는 아빠로부터 골뱅이가 들어 있는 상자를 생일 선물로 받았다. 상자 안에는 ㄴ자 모양의 골뱅이가 들어있다. ㄴ자 모양은 가로 및 세로로 각각 5개의 셀로 구성되어 있다. 상자에는 정사 www.acmicpc.net 별찍기? 같은 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 n을 선언 후 입력받습니다. 📔 풀이과정 모양이 다른 두 형태를 출력해야합니다. 한 부분은 | 모양이고 다른 부분은 ㅡ모양입니다. 각각 1, 2번 모양으로 생각해봅니다. 1. n*5-n만큼의 개행을 출력합니다. 그리고 개행 전 n개의@를 출력합니다.2. n만큼의 개행을 출력합니다. 그리고 개행 전 n*5개의 @를 출력합니다. 📔 ..
(C++, Python) - 백준(BOJ) 15818 : 오버플로우와 모듈러 https://www.acmicpc.net/problem/15818 15818번: 오버플로우와 모듈러 첫 줄에 연산될 정수의 개수 N(1 ≤ N ≤ 100)과 M(1 ≤ M ≤ 2,147,483,647)이 주어진다. 두 번째 줄에는 N개의 정수 ai (1 ≤ ai ≤ 2,147,483,647)가 한 줄로 주어진다. www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 수의 개수 n, modular연산을 할 기준 m, 정답을 출력할 ans, 각 수의 정보를 저장할 nums를 선언해줍니다. 📔 풀이과정 nums에 대해 for loop를 수행하며 공식대로 구현해줍니다. python의 경우 공식을 고려할 필요없이 모두 곱해줍니다. 📔 정답출력 ans를 출력해줍니다. 📕 Code ..
(C++, Python) - 백준(BOJ) 16503 : 괄호 없는 사칙연산 https://www.acmicpc.net/problem/16503 16503번: 괄호 없는 사칙연산 첫 번째 줄에는 "K1 O1 K2 O2 K3" 형태로 식이 주어진다. 정수 Ki (1 ≤ Ki ≤ 1,000)는 피연산자를, 문자열 Oi는 곱셈(*), 나눗셈(/), 덧셈(+), 뺄셈(-) 중 한 가지 연산자를 의미한다. 나눗셈 연산은 정수 나 www.acmicpc.net 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 1. 한 줄 수식 expr를 선언 후 입력받습니다.2. 이 후 ' '를 구분자로 문자열을 split해 list에 저장해줍니다. 📔 풀이과정 1, 3번째에 연산자가 고정되어 있으므로 맞춰서 사칙연산을 해줍니다. 우선순위는 두 가지 뿐입니다. (a x b) + c 또는 a x (b + c..
(Rust) - 백준(BOJ) 21312 : 홀짝 칵테일 https://www.acmicpc.net/problem/21312 21312번: 홀짝 칵테일 정진이는 특별한 음료를 가지고 있다. 음료들은 정수로 표현되는 고유 번호를 가지고 있다. 정진이는 이 음료들을 섞어 만든 칵테일을 만든다. 이 칵테일은 홀짝 칵테일이라 부르는데, 홀짝 칵 www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 한 줄을 입력 받고 세 개의 정수를 저장할 vector numbers를 선언해 저장합니다. 📔 풀이과정 홀수와 짝수를 나눠 odd, even vector에 저장합니다. 홀수원소들은 ans1에 짝수원소들은 ans2에 곱해 저장합니다. 📔 정답출력 하나라도 홀수가 있다면 짝수는 배제하고 맛을 구하게 됩니다. 그래서 ans1을 출력합니다. 이외에는..
(Python) - 백준(BOJ) 14579 : 덧셈과 곱셈 https://www.acmicpc.net/problem/14579 14579번: 덧셈과 곱셈 첫째 줄에 a, b (1 ≤ a < b ≤ 1000)가 주어진다. www.acmicpc.net 간단 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 범위 a, b를 입력받습니다.정답을 출력할 sum, 매 범위별 sum에 곱할 값을 저장할 piv를 선언 후 0으로 초기화해줍니다. 📔 풀이과정 공식대로 구현합니다. 📔 정답출력 sum%14579를 출력합니다. 📕 Code import sys input = sys.stdin.readline a, b = map(int, input().split()) sum = 0 piv = 0 for i in range (1, a + 1): sum += i piv = sum for..
(Rust) - 백준(BOJ) 16483 : 접시 안의 원 https://www.acmicpc.net/problem/16483 16483번: 접시 안의 원 첫째 줄에 양의 정수 T의 값이 주어진다. 단, T의 값은 10,000 이하이다. www.acmicpc.net 간단한 구현 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 한 줄line을 선언해 입력받고 t 변수를 선언해 이를 저장합니다. 📔 풀이과정 a, b, t를 그림으로 나타내면 다음과 같습니다. 접선과 원의 중심까지의 거리는 b이며 이 선과 접선은 수직이므로 피타고라스의 정리를 이용해 공식을 세울 수 있습니다. $$ b^2 + (t/2)^2 = a^2 $$ 구하려는 값은 $$ a^2 - b^2 $$ 이므로 적절히 이항하면 $$ (t/2)^2 = a^2 - b^2 $$ 가 됩니다. 📔 정답출력 이 공식을 ..