본문 바로가기

Python351

[SW Expert Academy] 5185. 이진수 5185. 이진수 문제) 16진수 1자리는 2진수 4자리로 표시된다. N자리 16진수가 주어지면 각 자리 수를 4자리 2진수로 표시하는 프로그램을 만드시오. 단, 2진수의 앞자리 0도 반드시 출력한다. 예를 들어 47FE라는 16진수를 2진수로 표시하면 다음과 같다. 0100011111111110 [입력] 첫 줄에 테스트케이스의 수 T가 주어진다. 1 2022. 3. 24.
[백준] 15565번: 귀여운 라이언 (python) 15565번: 귀여운 라이언 문제 ) 꿀귀 라이언 인형과, 마찬가지로 꿀귀인 어피치 인형이 N개 일렬로 놓여 있다. 라이언 인형은 1, 어피치 인형은 2로 표현하자. 라이언 인형이 K개 이상 있는 가장 작은 연속된 인형들의 집합의 크기를 구하여라. 입력 : 첫 줄에 N과 K가 주어진다. (1 ≤ K ≤ N ≤ 10^6) 둘째 줄에 N개의 인형의 정보가 주어진다. (1 또는 2) 출력 : K개 이상의 라이언 인형을 포함하는 가장 작은 연속된 인형들의 집합의 크기를 출력한다. 그런 집합이 없다면 -1을 출력한다. 풀이) 문제를 보자마자 투포인터로 풀어야겠다는 생각이 들었고, 이런 저런 제약조건을 풀어나가면서 코드를 짜긴 했는데 좀 지져분하게 짜졌다. 내 코드) 1 2 3 4 5 6 7 8 9 10 11 12.. 2022. 3. 24.
[백준] 14846번: 직사각형과 쿼리 (python) 14846번: 직사각형과 쿼리 문제 ) N행 N열로 이루어진 정사각형 행렬 A가 주어진다. 이때, 쿼리를 수행하는 프로그램을 작성하시오. x1 y1 x2 y2: 왼쪽 윗칸이 (x1, y1)이고, 오른쪽 아랫칸이 (x2, y2)인 부분 행렬에 포함되어 있는 서로 다른 정수의 개수를 출력한다. 입력 : 첫째 줄에 N (1 ≤ N ≤ 300)이 주어진다. 다음 N개의 줄에는 행렬의 정보가 주어지며, 각 줄은 N개의 수로 이루어져 있다. 행은 위에서부터 아래로, 열은 왼쪽부터 오른쪽으로 번호가 매겨져 있으며, 번호는 1번부터 시작한다. 행렬이 포함하고 있는 정수는 10보다 작거나 같은 자연수이다. 다음 줄에는 Q (1 ≤ Q ≤ 100,000)가 주어진다. 다음 Q개의 줄에는 쿼리의 정보 x1, y1, x2, .. 2022. 3. 23.
[백준] 11660번: 구간 합 구하기 5 (Silver) (python) 11660번: 구간 합 구하기 5 문제 ) N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 : 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차.. 2022. 3. 23.