전체 글

전체 글

    A+B 풀이

    문제 링크: https://www.acmicpc.net/problem/1000 백준 입출력과 사칙연산 2단계 - 1000번 A+B를 풀어보았다. 풀이: 정수 두 개를 입력받고, 합을 출력한다. C++ #include using namespace std; int main() { int first, second; cin >> first >> second; cout

    Hello World 풀이

    문제 링크: https://www.acmicpc.net/problem/2557 백준 입출력과 사칙연산 1단계 - 2557번 Hello World를 풀어보았다. 풀이: 간단하게 표준입출력을 이용해 풀면 되겠다. C++ #include using namespace std; int main() { cout

    X보다 작은 수 풀이

    문제 링크: https://www.acmicpc.net/problem/10871 백준 1차원 배열 2단계 - 10871번 X보다 작은 수를 풀어보았다. 풀이: 배열을 선언하고, X보다 작은 수를 순서대로 출력한다. C++ #include using namespace std; int main() { int n,x,inp; int arr[10000]={0,}; cin>>n>>x; for(int i=0;i>arr[i]; } for(int i=0;i

    별 찍기 - 1 풀이

    문제 링크: https://www.acmicpc.net/problem/2438 백준 반복문 8단계 - 2438번 별 찍기 - 1을 풀어보았다. 풀이: 2중 반복문을 써서 풀었다. 파이썬의 경우, print에 end를 넣어 쓰면 문자를 옆으로 쓸 수 있다. C++ #include using namespace std; int main() { int n; cin>>n; for(int i=1;i

    코테용 문제풀이 계획(2022/12/26)

    목표: 코딩테스트 대비 문제풀이 실력 늘리기 이유: 문제풀이 실력이 떨어지는 것을 많이 느꼈음 공부 방법: 하루 10문제씩, https://youtu.be/H6z1_tnyhp0 따라 백준 풀기 사용 언어: c++(실행시간이 빠르고 자료구조 공부 가능), java(백엔드에 많이 쓰임), python(문법이 쉬움)

    알고스팟 wildcard (wildcard) 문제 파이썬으로 풀기

    알고스팟 wildcard (wildcard) 문제 파이썬으로 풀기

    문자를 받아, 매치가 되는 문자를 출력하는 문제이다. 문제를 보고, 문자를 ?와 *로 잘라서 처리해야하나 고민해서, 자르고 위치를 어떻게 해야할지 찾아보다가 https://wikidocs.net/4308 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 여기에서 정규 표현식이라는 것을 발견했다. 읽어보니 문자열 매칭을 빠르고 짧게 처리할 수 있는 방법이 나와있어서, 그것을 이용해 코드를 짜보았다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 # wildcard import re case = int(input()) for i in range(case): instr = input() # 와일드카드 문자열 입력 newin = ins..

    알고스팟 승률올리기 (RATIO) 문제 파이썬으로 풀기

    알고스팟 승률올리기 (RATIO) 문제 파이썬으로 풀기

    승률을 1% 올리게 되는 가장 적은 연승 횟수를 구하는 문제이다. 이진탐색을 생각해 낸다면 매우 쉬운 문제가 될 것이고, 아니라면 고생할 것이다. 물론 난 후자였고, 그래서 이것저것 고민해보다가 문제 분류에 이진탐색이라고 있는것을 보고 이진탐색을 적용하여 문제를 해결했다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 # ratio maxwin = 2000000000 # 최대 승리 case = int(input()) for i in range(case): n, m = map(int, input().split()) result = 0 # 결과 nowrate = (m * 100) // n # 현재 승률 if nowrate >= ((m + maxwin) * 100)..

    알고스팟 원주율 외우기 (PI) 문제 파이썬으로 풀기

    알고스팟 원주율 외우기 (PI) 문제 파이썬으로 풀기

    숫자를 입력받아, 난이도를 계산하는 문제이다. 전형적인 동적계획법 문제처럼 보이지만(큰 문제를 작게 자르고 값을 계산하여 저장하고 저장한 값을 이용해 최종 값을 구하면 된다), 이 문제의 특이한 점은 숫자들을 3, 4, 5자리로만 끊어야 하고, 입력이 매우 크다는 것이다. 두번째 점은 특히 파이썬으로 풀때 치명적으로 다가오는데, 일반적인 동적계획법 문제 풀듯이 전체 값을 저장할 리스트/배열을 만들고 리스트/배열의 특정 위치의 값을 가져와서 그 값의 최소/최댓값을 구하고 그것을 return 하는 방식으로는 주어진 시간 (1000ms) 안에 풀 수 없다는 것이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ..