• [백준] 곱셈 1629 - 파이썬(Python)

    문제 자연수 A를 B번 곱한 수를 알고 싶다. 단 구하려는 수가 매우 커질 수 있으므로 이를 C로 나눈 나머지를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. 출력 첫째 줄에 A를 B번 곱한 수를 C로 나눈 나머지를 출력한다. 예제 입력 1 10 11 12 예제 출력 1 4 Solution B가 크기 때문에 2147483647번 곱하면 시간초과가 나므로 분할 정복이 필요하다. 1. b가 짝수인지 홀수인지 체크한다. 2. b가 짝수라면 A^B = (A^B/2)^2 와 같다. 3. b가 홀수라면 A ^B = (A^B/2)^2 * A 와 같다. def solution(a, b, c): i..

  • [Python] ord 함수와 chr 함수

    ord(문자) 하나의 문자를 인자로 받고 해당 문자에 해당하는 유니코드 정수를 반환 ord('a')를 넣으면 정수 97을 반환 chr(정수) 하나의 정수를 인자로 받고 해당 정수에 해당하는 유니코드 문자를 반환 인자(정수)의 유효 범위는 0 ~ 1,114,111 (16진수 0x10 FFFF) chr(97)을 하면 문자 'a'를 반환

  • [Python] sys.stdin.readline()

    반복문으로 여러줄 입력받는 상황에서는 input() 대신에 sys.stdin.readline()을 사용하는 것이 시간 복잡도를 줄일 수 있음 import sys T = int(input()) #Test case for i in range(T): a,b = map(int, sys.stdin.readline().split()) print(a+b)

  • [백준] 3460 이진수 (🥉 브론즈 3티어) - 파이썬(Python)

    for _ in range(int(input())): n = int(input()) i = 0 while n > 0: if n % 2 == 1: print(i, end = ' ') n = n // 2 # 나누기 연산 후 소수점 이하 버리기 i += 1 for문과 in 사이에 변수를 넣을 때 n 만큼 반복하게 하기 위함 언더바(_)로 사용 가능하다

  • [프로그래머스] 신고 결과 받기 level1 - 파이썬(Python)

    문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 유저를 신고할 수 있습니다. 신고 횟수에 제한은 없습니다. 서로 다른 유저를 계속해서 신고할 수 있습니다. 한 유저를 여러 번 신고할 수도 있지만, 동일한 유저에 대한 신고 횟수는 1회로 처리됩니다. k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저에게 정지 사실을 메일로 발송합니다. 유저가 신고한 모든 내용을 취합하여 마지막에 한꺼번에 게시판 이용 정지를 시키면서 정지 메일을 발송합니다. 다음은 전체 유저 목록이 ["muzi", "frodo", "apeach", "neo"]이고, k = 2..