본문 바로가기

Algorithm/Brute Force

(142)
(C++) - 백준(BOJ) 9724 번 : Perfect Cube https://www.acmicpc.net/problem/9724 9724번: Perfect Cube A perfect cube is an integer whose cube root is also an integer. For example 1, 8, 27, 64, 125, etc. are examples of perfect cubes but 9, 25 and 113 are not. Given two positive integers A and B, your task is to calculate the number of perfect cubes in the www.acmicpc.net 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 test case t, 범위 (a, b), map m, 정답을 출력할..
(C++) - 백준(BOJ) 10395 번 : Automated Checking Machine https://www.acmicpc.net/problem/10395 10395번: Automated Checking Machine The first line contains five integers Xi (0 ≤ Xi ≤ 1 for i = 1, 2, . . . , 5), representing the connection points of the first connector in the pair. The second line contains five integers Yi (0 ≤ Yi ≤ 1 for i = 1, 2, . . . , 5), representing the c www.acmicpc.net 간단한 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 5개의 정수를 입력받을 배열 a와 정답을 출력..
(C++) - 백준(BOJ) 21665 : Миша и негатив https://www.acmicpc.net/problem/21665 21665번: Миша и негатив Миша уже научился хорошо фотографировать и недавно увлекся программированием. Первая программа, которую он написал, позволяет формировать www.acmicpc.net 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 행 r, 열 c, 2차원 배열 ori, 정답 ans를 선언한 후 정보를 입력받습니다. 📔 풀이과정 r * c만큼 2중 for loop를 수행합니다. 지역변수 x 를 선언해 입력받습니다. x와 ori가 같다면 제대로 변환되지 않았으므로 ans++해줍니다. 📔 정답출력 ans..
(C++) - 백준(BOJ) 1174 : 줄어드는 수 https://www.acmicpc.net/problem/1174 1174번: 줄어드는 수 음이 아닌 정수를 십진법으로 표기했을 때, 왼쪽에서부터 자리수가 감소할 때, 그 수를 줄어드는 수라고 한다. 예를 들어, 321와 950은 줄어드는 수이고, 322와 958은 아니다. N번째로 작은 줄어드는 www.acmicpc.net 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 수 n, check를 위한 배열 ck, 수 목록 num, 정답을 출력할 ans, 뽑은 수들을 저장할 comb를 선언한 후 적절히 입력 받습니다. 📔 풀이과정 줄어드는 수의 최대값은 9876543210입니다. 이는 자릿수마다 배열 num에 저장해 둡니다.줄어드는 수를 결정하는 가짓수는 다음처럼 생각해볼 수 있습니다. 각 자리를 선..
(C++) - 백준(BOJ) 1535 : 안녕? https://www.acmicpc.net/problem/1535 1535번: 안녕 첫째 줄에 사람의 수 N(≤ 20)이 들어온다. 둘째 줄에는 각각의 사람에게 인사를 할 때, 잃는 체력이 1번 사람부터 순서대로 들어오고, 셋째 줄에는 각각의 사람에게 인사를 할 때, 얻는 기쁨이 1번 www.acmicpc.net 기본 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 사람 수 n, 잃는 체력 l, 얻는 기쁨 j를 일차원 배열로 선언 후 적절히 입력받습니다. 📔 풀이과정 dfs함수를 수행합니다. 현재 depth번째 사람에게 다름 두 가지 상태가 있습니다.1. depth번째 사람에게 인사하기2. depth번째 사람에게 인사하지 않기각자에 대해 모든 경우를 조사한 시간복잡도는 2^20이 되게 됩니다. 📔..
(C++) - 백준(BOJ) 1254 : 팰린드롬 만들기 https://www.acmicpc.net/problem/1254 1254번: 팰린드롬 만들기 동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는 www.acmicpc.net 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 문자열 s, 최대 팰린드롬 길이를 저장할 maxPalinLen을 선언한 후 적절히 입력받습니다. 📔 풀이과정 문자열의 중간이 팰린드롬일 때 마자 maxPalinLen에 해당 길이를 저장합니다.이후 문자열의 길이 - maxPalinLen이 추가해야할 단어의 길이가 됩니다. 📔 정답출력 (s.size() - maxPalinLen) * 2 + maxPa..
(C++) - 프로그래머스(위클리 챌린지) : 5주차_모음사전 https://programmers.co.kr/learn/courses/30/lessons/84512 코딩테스트 연습 - 모음사전 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니 programmers.co.kr 기본 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 모음목록 문자열 str, 모음으로 이뤄진 사전 내용을 저장할 map변수 comb을 선언해줍니다. 📔 풀이과정 dfs를 수행해 5개의 모음 중 i개로 만들 수 있는 문자열들을 모두 구해 comb에 저장해줍니다. 📔 정답출력 comb에 대해 for loop를 ..
(C++) - 백준(BOJ) 12919 : A와 B 2 https://www.acmicpc.net/problem/12919 12919번: A와 B 2 수빈이는 A와 B로만 이루어진 영어 단어 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수빈 www.acmicpc.net 전수조사 문제였습니다. 📕 풀이방법 📔 입력 및 초기화 문자열 s, t를 입력받습니다. 📔 풀이과정 1. s에서 t로 만든다면 매 문자에 대해 2가지 경우의 수를 확인해야 하므로 2^50시간복잡도를 가지게 됩니다. 이는 시간초과로 틀리게 됩니다. 2. 반대로 t에서 s를 만드는 생각을 해야 합니다. 때문에 명령어는 다음처럼 바뀌게 됩니다. 2-1. 문자열 ..