ps
-
문제 링크 : https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안�� www.acmicpc.net 두개의 리스트가 주어진다. 첫번째 리스트가 탐색할 대상이고, 두번째 리스트의 각 요소가 target 이다. 이를 for문을 통해 각각 이분탐색으로 문제를 해결했다. 이진탐색 , 이분탐색 https://infinitt.tistory.com/286 알고리즘 ) 이진 탐색, 이분 탐색 (Binary serach) _ python 재귀 * 이진 ..
백준 (boj) 파이썬 - 1920번 : 수 찾기문제 링크 : https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안�� www.acmicpc.net 두개의 리스트가 주어진다. 첫번째 리스트가 탐색할 대상이고, 두번째 리스트의 각 요소가 target 이다. 이를 for문을 통해 각각 이분탐색으로 문제를 해결했다. 이진탐색 , 이분탐색 https://infinitt.tistory.com/286 알고리즘 ) 이진 탐색, 이분 탐색 (Binary serach) _ python 재귀 * 이진 ..
2020.08.09 -
문제 링크 : https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. �� www.acmicpc.net * 듣도 못한사람 N 과 보도 못한사람 M의 공통된 부분을 사전순으로 정렬해서 출력하면 된다. 공통된 부분이라 함은 set의 교집합을 이용하면 편할것같다는 생각이 들었다. https://infinitt.tistory.com/19?category=1071951 파이썬(Python) 기초 (8) 데이터 타입(Data Type) - 집합 (set) add , remove , int..
백준 (boj) 파이썬 - 1764번 : 듣보잡문제 링크 : https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. �� www.acmicpc.net * 듣도 못한사람 N 과 보도 못한사람 M의 공통된 부분을 사전순으로 정렬해서 출력하면 된다. 공통된 부분이라 함은 set의 교집합을 이용하면 편할것같다는 생각이 들었다. https://infinitt.tistory.com/19?category=1071951 파이썬(Python) 기초 (8) 데이터 타입(Data Type) - 집합 (set) add , remove , int..
2020.07.05 -
문제링크 :https://www.acmicpc.net/problem/1182 1182번: 부분수열의 합 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. www.acmicpc.net itertools의 combination을 사용하여 풀었다. (자동으로 n개중에 r개를 뽑는 조합(combination)을 반환해주는... ) https://infinitt.tistory.com/114 순열과 조합 ( n! , nPr , nCr ) - (itertools) combinations, permutations + 중복순열, 중복조합 *n! ..
백준 (boj) 파이썬 - 1182 번 : 부분수열의 합문제링크 :https://www.acmicpc.net/problem/1182 1182번: 부분수열의 합 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. www.acmicpc.net itertools의 combination을 사용하여 풀었다. (자동으로 n개중에 r개를 뽑는 조합(combination)을 반환해주는... ) https://infinitt.tistory.com/114 순열과 조합 ( n! , nPr , nCr ) - (itertools) combinations, permutations + 중복순열, 중복조합 *n! ..
2020.05.12 -
문제 링크 : https://www.acmicpc.net/problem/1377 1377번: 버블 소트 첫째 줄에 N이 주어진다. N은 500,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 A[1]부터 A[N]까지 하나씩 주어진다. A에 들어있는 수는 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net 일단 이 문제를 풀기 위해서는 버블정렬을 알아야했다. 그래서 버블정렬에 대해 먼저 정리해 보았다. https://infinitt.tistory.com/228 버블 정렬 (bubble sort) * 버블정렬의 개념 두 인접한 원소를 검사하여 정렬하는 방법을 말한다. 시간 복잡도는 느리지만, 코드는 단순하다. 교환정렬의 일부에 속한다. 원소가 이동하는 모습이 거품..
백준(boj) 파이썬 - 1377 번 : 버블 소트문제 링크 : https://www.acmicpc.net/problem/1377 1377번: 버블 소트 첫째 줄에 N이 주어진다. N은 500,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 A[1]부터 A[N]까지 하나씩 주어진다. A에 들어있는 수는 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net 일단 이 문제를 풀기 위해서는 버블정렬을 알아야했다. 그래서 버블정렬에 대해 먼저 정리해 보았다. https://infinitt.tistory.com/228 버블 정렬 (bubble sort) * 버블정렬의 개념 두 인접한 원소를 검사하여 정렬하는 방법을 말한다. 시간 복잡도는 느리지만, 코드는 단순하다. 교환정렬의 일부에 속한다. 원소가 이동하는 모습이 거품..
2020.04.13 -
문제 링크 : https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 이항 계수가 뭔지 몰라서 위키백과에서 보고 그대로 코드로 옮겼다. * 이항계수 파이썬 코드 from math import factorial as f n,k = map(int,input().split()) if kn : print(0) else : print(int(f(n)/( f(k)*f(n-k) )))
백준 (boj) 파이썬 - 11050 이항 계수 1문제 링크 : https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 이항 계수가 뭔지 몰라서 위키백과에서 보고 그대로 코드로 옮겼다. * 이항계수 파이썬 코드 from math import factorial as f n,k = map(int,input().split()) if kn : print(0) else : print(int(f(n)/( f(k)*f(n-k) )))
2020.04.02