본문 바로가기

전체 글195

[Python] 백준 - 블랙잭 https://www.acmicpc.net/problem/2798from itertools import combinationsN,M = list(map(int,input().split()))arr = list(map(int,input().split()))arr.sort()min = 300000for i in combinations(arr,3): n = M - sum(list(i)) if (n>=0 and n  중복을 허용하지 않는 3개의 조합으로 만들 수 있는 경우의 리스트 중,모든 3개의 조합을 토대로 합을 구한 후, 그 합 중에서 제일 차이가 덜 나는 합 값을 출력한다. 다른 사람 답import sysn, m = map(int, sys.stdin.readline().split())r.. 2024. 5. 13.
[Python] 백준 - 영화감독 숌 https://www.acmicpc.net/problem/1436 Python 코드N = int(input())result = 0 # 답cnt = 0while(1): result+=1 if("666" in str(result)): cnt+=1 if (cnt==N): print(result) break Kotlin 코드fun main() { val N = readLine()!!.toInt() // 사용자로부터 입력 받음 var result = 0 // 답 var cnt = 0 // 현재까지 찾은 "666"을 포함하는 숫자의 수 while (true) { result++ if ("666" in result.t.. 2024. 5. 10.
[Python] 백준 - 수 이어쓰기 1 https://www.acmicpc.net/problem/1748N = int(input())result = 0 # 답n = len(str(N)) # 글자수 길이for i in range(n,0,-1): result += (N-(10**(i-1))+1)*(i) N = (10**(i-1))-1print(result) 글자수 길이를 구한 다음에 각 자릿수별로 100의 자리면 숫자가 3, 10의 자리면 길이가 2, 1의 자리면 길이가 1.. 이므로(각 자리수 숫자들의 개수 * 각 자리수의 길이) 를 더하면 값이 나온다. ex. 129일 경우 129~100에 해당하는 숫자 길이를 구한 후,그 다음 자리수로 가게 되면99 ~ 10, 9~1 이 되므로 N을 999, 99, 9 이런식으로 바꾸게 했다..... 2024. 5. 9.
[Android] getty 이미지 가져오기 - 이미지 크롤링 요구사항https://www.gettyimages.com/photos/collaboration 의 내용을 리스트 형태로 출력합니다.컬럼은 3개입니다.이미지를 가져오는데 있어, Getty api 를 사용하는게 아닌, 다른 방식으로의 처리를 부탁드립니다.(오픈소스 사용가능합니다.)사용 언어 및 개발 환경은 안드로이드 기기에서 실행이 되는 조건만 만족하면 자유롭게 선택할 수 있습니다. 구현 내용 이미지 데이터 읽어오는 순서이미지 데이터를 웹으로 부터 읽어옵니다.  1) 시작 시, ViewModel에서 loadWebPage 함수 호출 -> UseCase 호출 -> 이미지 정보 List 얻어오기eventFlow를 통해, 값을 onSuccess로 얻어왔다면, getImage.emit(true)를 보냄fun load.. 2024. 5. 7.
[코딩테스트] 1,2,3 더하기 - Python https://www.acmicpc.net/problem/9095 from itertools import product N = int(input())M = [int(input()) for _ in range(N)]for k in M: cnt = 0 # 정수 K를 1,2,3의 합으로 나타내는 방법 개수 for i in range(1, k+1): # 1~k개의 중복 순열을 만든다... for j in product([1,2,3], repeat=i): if sum(j)==k: # 각 조합의 합이 k면, 카운트 cnt+=1 print(cnt) # 개수 출력 하하 모든 경우의 수를 놓고 ... 조건에 만족하면 카운트 했더니 시간이 오래.. 2024. 5. 3.
[코딩테스트] 브루트 포스 모든 경우의 수를 다 해보는 것이다.ex. 비밀번호가 4자리이고, 숫자로만 이루어져있다면, 0000부터 9999까지 다 입력해보는 것이다.- 경우의 수는 10,000가지이며, 직접 비밀번호를 입력하는데 10,000초 = 2.7 시간 정도 걸린다. 시간 제한을 넘지 않을 것 문제만 할 것! 1. 문제의 가능한 경우의 수를 계산해본다..2. 가능한 모든 방법을 다 만들어본다..3. 각각의 방법을 이용해 답을 구해본다. 시간 복잡도 : O (방법의 수 X 방법 1개의 시간 복잡도) 경우의 수N명의 사람이 한 줄로 서는 경우의 수 : N!N명의 사람 중에서 대표 두 명을 뽑는 경우의 수 : nC2N명의 사람 중에서 대표 세 명을 뽑는 경우의 수 : nC3N명의 사람 중에서 반장 1명과 부반장 1명을 뽑는 경우의.. 2024. 5. 3.