목록Coding Test/Python (33)
kjp0411 님의 블로그
프로그래머스 문제: 자릿수 더하기https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명 문제 풀이 💡 실수 포인트처음엔 n의 자릿수를 구해 10의 제곱 단위로 나눠서 계산하려고 하는 과정에서 헷갈리는 포인트가 있었다.➡️ ^는 XOR, **가 제곱10^i 사용 → 거듭제곱이 아닌 XOR 연산이라 오답10**i 또는 문자열로 변환하여 sum(int(d))가 맞음 📝 회고 및 정리^는 거듭제곱이 아닌 XOR이므로 **로 수정sum(int(d) for d in str(n)) 방식도 가능하지만, 알고..
https://www.acmicpc.net/problem/1158문제 분석1번부터 N번까지 사람들이 원형으로 앉아 있음.K번째 사람을 순서대로 제거하며, 모든 사람이 제거될 때까지 반복.제거된 순서를 출력하는 문제.예시: N = 7, K = 3일 때 → 제거 순서: 3, 6, 2, 7, 5, 1, 4 해결 방법1. 원형 연결 리스트(Circular Linked List) 방식직접 원형 구조를 구현하여 K번째 사람을 찾아 제거.노드 구조와 연결 관계를 구현해 매번 이동 및 제거 처리.class Node: def __init__(self, value): self.value = value self.next = Noneclass CircularLinkedList: def __..
https://www.acmicpc.net/problem/9012 문제 분석괄호 문자열이 올바른 괄호 문자열(VPS: Valid Parenthesis String)인지 판단.VPS 조건:열린 괄호 (는 반드시 닫힌 괄호 )와 짝을 이루어야 함.괄호 개수뿐 아니라 닫히는 순서도 중요함.예시:입력: (()()) → 출력: YES입력: (() → 출력: NO해결 방법스택을 이용해 괄호의 짝 확인.(이면 스택에 push, )이면 스택에서 pop.스택이 비어있을 때 )가 나오면 VPS 아님.문자열 처리 후 스택에 값이 남아 있어도 VPS 아님.def check_balance(s): stack = [] valid = True for p in s: if p == "(": ..
