코딩테스트/백준

    [백준] 17140번 : 이차원 배열과 연산(Python)

    [백준] 17140번 : 이차원 배열과 연산(Python)

    문제 크기가 3×3인 배열 A가 있다. 배열의 인덱스는 1부터 시작한다. 1초가 지날때마다 배열에 연산이 적용된다. R 연산: 배열 A의 모든 행에 대해서 정렬을 수행한다. 행의 개수 ≥ 열의 개수인 경우에 적용된다. C 연산: 배열 A의 모든 열에 대해서 정렬을 수행한다. 행의 개수 0,box[loop])) # 행에 있는 숫자들의 개수를 센다 count = Counter(box[loop]) # 행에 있는 숫자들(중복없는)을 num에 저장한다. num = list(set(box[loop])) # temp에 숫자와 숫자의 개수를 임시로 저장한다. for i in range(len(num)): temp.append([num[i],count[num[i]]]) # 숫자의 개수대로 오름차순 정렬하고 숫자의 개수가..

    [백준] 2864번 : 5와 6의 차이(Python)

    [백준] 2864번 : 5와 6의 차이(Python)

    문제 상근이는 2863번에서 표를 너무 열심히 돌린 나머지 5와 6을 헷갈리기 시작했다. 상근이가 숫자 5를 볼 때, 5로 볼 때도 있지만, 6으로 잘못 볼 수도 있고, 6을 볼 때는, 6으로 볼 때도 있지만, 5로 잘못 볼 수도 있다. 두 수 A와 B가 주어졌을 때, 상근이는 이 두 수를 더하려고 한다. 이때, 상근이가 구할 수 있는 두 수의 가능한 합 중, 최솟값과 최댓값을 구해 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 두 정수 A와 B가 주어진다. (1

    [백준] 2217번 : 로프(Python)

    [백준] 2217번 : 로프(Python)

    문제 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하지만 여러 개의 로프를 병렬로 연결하면 각각의 로프에 걸리는 중량을 나눌 수 있다. k개의 로프를 사용하여 중량이 w인 물체를 들어올릴 때, 각각의 로프에는 모두 고르게 w/k 만큼의 중량이 걸리게 된다. 각 로프들에 대한 정보가 주어졌을 때, 이 로프들을 이용하여 들어올릴 수 있는 물체의 최대 중량을 구해내는 프로그램을 작성하시오. 모든 로프를 사용해야 할 필요는 없으며, 임의로 몇 개의 로프를 골라서 사용해도 된다. 입력 첫째 줄에 정수 N이 주어진다. 다음 N개의 줄에는 각 로프가 버틸 수..

    [백준] 1748번 : 수 이어 쓰기1

    [백준] 1748번 : 수 이어 쓰기1

    문제 1부터 N까지의 수를 이어서 쓰면 다음과 같이 새로운 하나의 수를 얻을 수 있다. 1234567891011121314151617181920212223... 이렇게 만들어진 새로운 수는 몇 자리 수일까? 이 수의 자릿수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. 출력 첫째 줄에 새로운 수의 자릿수를 출력한다. 전체코드(Python) # 이어쓸 숫자를 입력 받는다. n = input() # 숫자의 길이를 size에 저장한다. size = len(n) # 숫자의 길이를 저장할 변수를 선언한다. result = 0 # 숫자의 길이보다 한자릿수 낮은 10의 size-1승을 n에서 빼준다 # 그래야만 숫자의 길이만큼 곱할 개수가 나온다. n = int..

    [백준] 11725번 : 트리의 부모 찾기(Python)

    [백준] 11725번 : 트리의 부모 찾기(Python)

    문제 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 노드의 개수 N (2 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N-1개의 줄에 트리 상에서 연결된 두 정점이 주어진다. 출력 첫째 줄부터 N-1개의 줄에 각 노드의 부모 노드 번호를 2번 노드부터 순서대로 출력한다. 전체코드(Python) # 정점의 개수를 입력 받는다. def bfs(tree,num,start): # 부모가 있는 애들을 담을 공간 box = [] box.append(start) # box에 담긴 모든 숫자가 없어질때까지 순회한다. while len(box)!=0: start = box.pop(0) while len(tree[start-1..

반응형