일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 이진탐색 #나무 자르기
- 탑다운
- 바텀업
- 디피
- 안드로이드
- fibo
- topdown
- 오픽가격
- 다이나믹프로그래밍
- ㅂ
- XML주석
- English
- XML
- dynamicProgramming
- dp
- 오픽점수잘받는방법
- 안드로이드주석
- 오픽
- 메모이제이션
- 오픽노잼공부방법
- 영어말하기
- 피보나치수열
- opic
- 주석
- stack 스택
- 이진탐색
- 오픽노잼
- 오픽공부법
- 영어회화
목록분류 전체보기 (298)
RUBY
출처:: www.acmicpc.net/problem/9613 분류:: 유클리드 1. 문제 이해 및 해결과정 2. 풀이방법 1. 유클리드 #GCD 합 #https://www.acmicpc.net/problem/9613 import sys from itertools import combinations sys.stdin = open("input.txt","r") input=sys.stdin.readline t=int(input()) for _ in range(t): arr=list(map(int,input().split())) selected=list(combinations(arr[1:],2)) gcd = [] #gcd저장 for a,b in selected: #가능한 쌍에서 if a==0 or b==0: c..
출처:: www.acmicpc.net/problem/6588 분류:: 수학 1. 문제 이해 및 해결과정 2. 풀이방법 1. 에라토스테네스의 체 #골드바흐의 추측 #https://www.acmicpc.net/problem/6588 import sys import math maxv=1000000 sosu=[True]*(maxv+1) sosu[1]=False for i in range(2,int(math.sqrt(maxv))+1): #소수구하기 if sosu[i]: j=2 while i*j
출처:: www.acmicpc.net/problem/1934 분류:: 유클리드 호제법 1. 문제 이해 및 해결과정 - 유클리드 호제법 int gcd(int a, int b) { while (b > 0) { int tmp = a; a = b; b = tmp%b; } return a; } 2. 풀이방법 1. 유클리드 호제 #최소공배수 #https://www.acmicpc.net/problem/1934 import sys sys.stdin = open("input.txt","r") n=int(input()) def LCD(a,b): x,y=a,b while a>0:#16 (6,10)=6*1+4 ->(4,6)=4*1+2 ->(2,4)=2*2+0 ->(0,2) (나머지,나누는 수) # print(a, b) tmp..
출처:: www.acmicpc.net/problem/1212 분류:: 1. 문제 이해 및 해결과정 2. 풀이방법 #8진수 2진수 #https://www.acmicpc.net/problem/1212 import sys sys.stdin = open("input.txt","r") input=sys.stdin.readline print(bin(int(input(),8))[2:]) 3. 오답원인 4. 알게된 점
출처:: www.acmicpc.net/problem/2089 분류:: 1. 문제 이해 및 해결과정 2. 풀이방법 1. #-2진수 #https://www.acmicpc.net/problem/2089 import sys sys.stdin = open("input.txt","r") input=sys.stdin.readline n=int(input()) res=[] if n==0: print('0') exit(0) while n: # print(n) if n%-2: #나머지 있으면 n=n//-2+1 res.append('1') else: n=n//-2 res.append('0') print(''.join(reversed(res))) 3. 오답원인 - 0일때 처리안해서 틀림 4. 알게된 점
출처:: www.acmicpc.net/problem/1676 분류:: 1. 문제 이해 및 해결과정 2. 풀이방법 #팩토리얼 0의 개수 #https://www.acmicpc.net/problem/1676 import sys sys.stdin = open("input.txt","r") n=int(input()) def fact(n): factorial=1 if n==0 or n==1: return 1 else: for i in range(1,n+1): factorial=i*factorial return factorial num=fact(n) num=list(str(num)) cnt=0 for i in range(len(num)-1,-1,-1): if num[i]!='0': break else: cnt+=1 ..
출처:: https://www.acmicpc.net/problem/1978 분류:: 수학 1. 문제 이해 및 해결과정 2. 풀이방법 #소수찾기 #https://www.acmicpc.net/problem/1978 import sys import math sys.stdin = open("input.txt","r") n=int(input()) arr=list(map(int,input().split())) cnt=0 def isprime(x): if x==1: return False for i in range(2,int(math.sqrt(x))+1): if x%i==0: return False return True for x in arr: if isprime(x): cnt+=1 print(cnt) 3. 오답원인..
출처:: www.acmicpc.net/problem/17299 분류:: 스택 1. 문제 이해 및 해결과정 - 오큰수와 유사 hiruby.tistory.com/493 2. 풀이방법 1. 스택 #오등큰수 #https://www.acmicpc.net/problem/17299 import sys from collections import Counter sys.stdin = open("input.txt","r") n=int(input()) #O(logN) O(N) O(1)로 풀어야함 arr = list(map(int, sys.stdin.readline().split())) cnt=Counter(arr) arr =[[index,cnt[index]] for index in arr] #수와 횟수를 넣음 stack = ..