목록분류 전체보기 (189)
정화 코딩
탐색 (Search) 여러 데이터들 중에서 원하는 값을 찾는 알고리즘 1. 순차 탐색 (Linear Search) 💡 정의 리스트의 항목들을 처음부터 마지막까지 하나씩 순서대로 검사하는 알고리즘 💡 과정 1️. 맨 앞 데이터와 찾으려는 데이터가 같은지 비교한다. 2️. 다르다면 다음 데이터와 찾으려는 데이터가 같은지 비교한다. 3. 같은 데이터를 찾기 전까지 2의 과정을 반복하고, 같은 데이터를 찾으면 종료한다. 💡 특징 - 정렬되지 않은 리스트에도 적용 가능하다. - 시간복잡도: O(n) 2. 이진 탐색 (Binary Search) 💡 정의 배열을 반으로 쪼개어 찾으려는 값이 왼쪽에 있는지 오른쪽에 있는지를 찾아 탐색 범위를 좁혀가며 탐색을 진행하는 알고리즘 💡 과정 1️. 시작 인덱스와 마지막 인덱스..
전부 파이썬으로 풀었고 다 푸는 데에 40-50분 정도 걸렸다. C문제를 다른 방법으로 푸느라 20-30분 정도 더 썼다. A. 사칙연산 (백준 10869번) https://www.acmicpc.net/problem/10869 import sys a, b = map(int, sys.stdin.readline().split()) print(a+b) print(a-b) print(a*b) print(a//b) print(a%b) (정답) B. 나머지 (백준 10430번) https://www.acmicpc.net/problem/10430 import sys a, b, c = map(int, sys.stdin.readline().split()) print((a+b)%c) print(((a%c)+(b%c))%c..
9/1. 이항 계수 1 (백준 11050번) https://www.acmicpc.net/problem/11050 #python import sys def fact(num) : ans = 1 for i in range(1, num+1) : ans *= i return ans n, k = map(int, sys.stdin.readline().split()) ans = fact(n) / (fact(k) * fact(n-k)) print(int(ans)) 저번에 풀었던 문제이지만 저번에 풀 때는 함수를 만들어서 하지 않았기 때문에, 이번에는 함수를 만들어서 활용하는 방법으로 풀어봤다. (정답) 9/3. 카드2 (백준 2164번) https://www.acmicpc.net/problem/2164 #python i..
EDOC 코딩테스트 전날인 오늘, 코딩테스트 예비소집에 있는 문제들을 풀었다. 전부 파이썬으로 풀었고, 총 1시간 20분 걸렸다. A. A+B (백준 1000번) https://www.acmicpc.net/problem/1000 import sys a, b = map(int, sys.stdin.readline().split()) print(a+b) (정답) B. 꼬마 정민 (백준 11382번) https://www.acmicpc.net/problem/11382 import sys a, b, c = map(int, sys.stdin.readline().split()) print(a+b+c) (정답) C. 단어 길이 재기 (백준 2743번) https://www.acmicpc.net/problem/2743 ..
깃허브에 코딩 문제 풀기용 레포지토리를 만들었다. 깃허브에 올리는 연습을 하기 위해... 후후 깃헙과 친해질거다!! 8/28. 직각삼각형 (백준 4153번) https://www.acmicpc.net/problem/4153 #python import sys while True : a, b, c = map(int, sys.stdin.readline().split()) if a + b + c == 0 : exit() max = c if a > max : max = a if b > max : max = b if a*a + b*b + c*c == max*max*2 : print("right") else : print("wrong") (정답) 8/28. 블랙잭 (백준 2798번) https://www.acmicp..
파이썬으로 스택 구현하기 (by 리스트) class Stack : def __init__(self) : self.items = [] def push(self, item) : self.items.append(item) def pop(self) : if not self.isEmpty() : return self.items.pop() else : print("Stack underflow") exit() def peek(self) : return self.items[-1] def isEmpty(self) : return not self.items def size(self) : return len(self.items) def clear(self) : self.items = [] 파이썬으로 큐 구현하기 (by 리스..
8/21. 벌집 (백준 2292번) https://www.acmicpc.net/problem/2292 #python n = int(input()) count = 1 num = 1 while n > num : num += count * 6 count += 1 print(count) 헷갈려서 이런 식으로 그려가면서 규칙을 찾았다. 각 줄에서 최대인 수는 1, 7, 19, 37, 61인데, 공차가 6, 12, 18 이런 식으로 6의 배수였다. (정답) 8/21. 괄호 (백준 9012번) https://www.acmicpc.net/problem/9012 #python import sys num = int(sys.stdin.readline()) count = 0 while count < num : data = s..
8/15. 영화감독 숌 (백준 1436번) https://www.acmicpc.net/problem/1436 #python n = int(input()) count = 0 num = 0 while count = 3 : is666 = True if qu == 0 : break if is666 : count += 1 print(num) 처음에는 규칙을 찾으려고 했다. 도저히 숫자를 1부터 시작해서 하나하나 체크하기에는 시간 초과가 나올 것 같았기 때문이었다. 근데..