파이썬

10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net 문제 풀이에 도움 되었던 블로그 😊 [알고리즘] Next Permutation NextPermutation 현 순열에서 사전 순(오름차순)으로 다음 순열을 생성합니다. 즉 배열을 가장 작은 값으로 정렬한 뒤, 한 자리씩 swap하면서 출력합니다. 만약 숫자배열이라면 각각의 자리를 합해서 velog.io 문제 풀이 해당 문제는 permutation 알고리즘에 대해 알고 있으면 쉽게 문제를 해결할 수 있다. c++에서는 알고리즘 라이브러리에서 next_permutation을 제공하고 있고, python에서는 itertools에..
25239번: 가희와 카오스 파풀라투스 차원의 균열 패턴이 끝난 후, 파풀라투스가 회복하는 체력이 h%라고 할 때, h를 출력해 주세요. www.acmicpc.net 풀이 과정 1. 현재 시간을 hh, mm으로 받고 정수형으로 저장하였다. 2. 영역의 값을 num 배열에 받고, 영역에 접근하였는지 안 했는지 확인하기 위하여 크기가 6인 bool 형식의 배열을 "seal"로 초기화해주었다. 3. 이벤트 수(L) 만큼 반복문을 돌린다. 3-1. 만약 입력받은 s.T 가 1분이 지났다면 반복문을 종료시켰다. 3-2. 입력받은 명령어가 "^" 이면 현재 시간이 가리키는 영역을 False로 변경해준다. 3-3. 입력받은 명령어가 시간이 포함될 경우 3-3-1. 명령어에 "MIN" 이 포함될 경우 : 현재 분(mm..
25238번: 가희와 방어율 무시 메이플스토리 몬스터는 방어율 수치가 있습니다. 이 방어율 수치의 일정 %를 무시하는 것을 방무라고 합니다. 유저는 아이템을 사거나, 특정한 스킬 레벨을 올려서 방무 수치를 올릴 수 있습니 www.acmicpc.net 풀이 과정 1. 주어진 방어율과 방무를 각각 a, b로 입력 받았다. 2. 몬스터의 방어율 수치가 100보다 크거나 같으면 대미지를 줄 수 없다. 3. "방어율 - (방무 / 100 * 방어율) = 체감하는 방어율 수치 " 이 100 이상 일 경우 0을 출력하고 아닐 경우 1을 출력하였다. 풀이 코드 `a,b = map(int,input().split()) ; print(0 if (a - (b/100 * a)) >= 100.0 else 1)
6209번: 제자리 멀리뛰기 첫 번째 줄에는 갇힌 돌섬으로부터 탈출구까지의 거리 d(1 ≤ d ≤ 1,000,000,000), 작은 돌섬의 수 n(0 ≤ n ≤ 50,000), 제거할 수 있는 작은 돌섬의 수 m (0 ≤ m ≤ n)이 공백으로 구분되어 주어진다. 두 www.acmicpc.net 풀이 과정 해당 문제는 저어어어어엉말 어려웠다.. 👏👏 해당 문제의 알고리즘 분류는 이분 탐색으로 표기되어 있었고, 그것은 나에게 도움이 되지 않았다...😂😂 결국 이분 탐색의 target을 바위 간에 거리로 잡아야 하는데, 바위를 제거를 어떤 식으로 구현해야 할지 감이 잡히지 않아서 매우 고생했던 문제였다.. 1. 입력받은 돌섬(rocks)들의 거리를 오름차순 정렬을 하고, 주어진 거리도 rocks에 appen..
25240번: 가희와 파일 탐색기 2 Q개의 질문에 대해, 연산이 성공하면 1을 실패하면 0을 출력해 주세요. 각 질문에 대한 답은 한 줄에 하나씩 출력해 주세요. www.acmicpc.net 풀이 과정 이 문제는 정말 맞왜틀을 외치면서 풀었던 문제인 거 같다... 7번이나 틀렸던 문제😂😂 문제를 제대로 읽지 않아서 중요한 부분을 놓쳤다. " 유저가 속한 그룹들에 대한 정보에 USER_NAME이 주어지지 않더라도 그룹 이름이 USER_NAME인 그룹에 속함에 주의하세요." 유저에 대한 정보의 개수 U만큼 user_name과 user_group이 입력되는데, user_name이 동일한 이름을 가진 그룹에 속하다는 것을 놓쳐버렸다.. 🤦‍♂️🤦‍♂️ 1. 필자는 그룹에 어떤 유저가 포함되어 있는지, 그룹 이..
2539번: 모자이크 수찬이는 선생님을 도와서 교실 벽면을 장식할 모자이크 그림을 그리기로 하였다. 이를 위하여 직사각형 모양의 큰 도화지를 준비하여 교실 벽에 붙이고 1cm 간격으로 가로선과 세로선을 그려서 www.acmicpc.net 풀이 과정 이분 탐색의 팁은 주체를 찾고 해당 주체를 target으로 잡아서 이분 탐색을 해주면 된다. 하지만 해당 문제를 3번이나 틀렸다.😂 1. 첫째줄부터 셋째 줄까지 입력을 받고 잘못 칠해진 칸(y, x) 값을 입력받을 때 높이(y)의 max 값을 left에 저장해줘야 한다... 해당 작업을 하지 않고 정형적인 이분 탐색의 left 값을 0으로 해놓아서 9%에서 바로 틀려버렸다 ㅠ 색종이는 밑변에 맞춰서 붙이기 때문에 최소한 가장 높은 높이의 색종이 칸을 가지고 있..
6137번: 문자열 생성 첫 번째 줄에 문자열 S의 길이 N이 주어진다. (N
16434번: 드래곤 앤 던전 첫 번째 줄에 방의 개수 N (1 ≤ N ≤ 123,456) 과 용사의 초기 공격력 HATK (1 ≤ HATK ≤ 1,000,000) 가 주어집니다. i+1번째 줄엔 i번째 방의 정보를 나타내는 세개의 정수 ti, ai, hi (ti ∈ {1, 2}, 1 www.acmicpc.net 풀이 과정 1. 알고리즘 분류로 이분 탐색으로 되었지만 단순 구현으로 풀 수 있다. 하지만 오랜만에 이분 탐색으로 문제를 해결하였다. 2. 보통 이분 탐색에서는 target을 뭐로 정해야하는지 감을 잡기 힘들 때가 많다. 그럴 때는 물어보는 것(HmaxHp)을 target으로 잡아주면 좋다. 아님 말고 😊 3. 필자는 최소 hp 값을 찾기 위하여 hp을 target으로 잡았다. left = 0,..
행복한쿼콰
'파이썬' 태그의 글 목록