BOJ
-
문제 링크 : 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/2167 2167번: 2차원 배열의 합 첫째 줄에 배열의 크기 N, M(1 ≤ N, M ≤ 300)이 주어진다. 다음 N개의 줄에는 M개의 정수로 배열이 주어진다. 배열에 포함되어 있는 수는 절댓값이 10,000보다 작거나 같은 정수이다. 그 다음 줄에는 합을 구할 부분의 개수 K(1 ≤ K ≤ 10,000)가 주어진다. 다음 K개의 줄에는 네 개의 정수로 i, j, x, y가 주어진다(i ≤ x, j ≤ y). www.acmicpc.net 2차원 배열이기에 2중 for문을 사용하여, 문제내용 그대로 구현했다. 하지만 그냥 python3으로 제출하게되면 시간초과가 났기 때문에, 다른 방법을 이용하라는 출제의도같다. 일단은 pypy3로..
백준 (boj) 파이썬 - 2167 이차원 배열 합문제 링크 : https://www.acmicpc.net/problem/2167 2167번: 2차원 배열의 합 첫째 줄에 배열의 크기 N, M(1 ≤ N, M ≤ 300)이 주어진다. 다음 N개의 줄에는 M개의 정수로 배열이 주어진다. 배열에 포함되어 있는 수는 절댓값이 10,000보다 작거나 같은 정수이다. 그 다음 줄에는 합을 구할 부분의 개수 K(1 ≤ K ≤ 10,000)가 주어진다. 다음 K개의 줄에는 네 개의 정수로 i, j, x, y가 주어진다(i ≤ x, j ≤ y). www.acmicpc.net 2차원 배열이기에 2중 for문을 사용하여, 문제내용 그대로 구현했다. 하지만 그냥 python3으로 제출하게되면 시간초과가 났기 때문에, 다른 방법을 이용하라는 출제의도같다. 일단은 pypy3로..
2020.04.05 -
문제 링크 : 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 -
문제 링크 : https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다. (1
백준 (boj) 파이썬 - 2775 부녀회장이 될테야문제 링크 : https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다. (1
2020.03.27 -
문제 링크 : https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 않은 명령이 주어지는 경우는 없다. www.acmicpc.net 큐는 스택과 반대되는 개념이라고 생각하면 된다. 큐는 먼저 들어온것을 먼저 꺼내는 선입선출 스택은 후입선출이다. import sys input = sys.stdin.readline N = int(input()) arr = [] for i in range(N): command = input().rstrip() if 'push' in ..
백준 (boj) 10845 파이썬 - 큐문제 링크 : https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 않은 명령이 주어지는 경우는 없다. www.acmicpc.net 큐는 스택과 반대되는 개념이라고 생각하면 된다. 큐는 먼저 들어온것을 먼저 꺼내는 선입선출 스택은 후입선출이다. import sys input = sys.stdin.readline N = int(input()) arr = [] for i in range(N): command = input().rstrip() if 'push' in ..
2020.03.23