분류 전체보기

    [백준] 1463번 : 1로 만들기(Python)

    [백준] 1463번 : 1로 만들기(Python)

    문제설명 정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다. X가 3으로 나누어 떨어지면, 3으로 나눈다. X가 2로 나누어 떨어지면, 2로 나눈다. 1을 뺀다. 정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오. 제한사항 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. 첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다. 전체코드(Python) def calculate(n): # 0~3까지 초기값 셋팅 arr = [0,0,1,1] for i in range(4,n+1): # 적게 연산한 횟수 후보들 저장 공간 candidate = [] # 만일 대상 숫자가 3으로 나뉘어 질경우 배열의 몫..

    [백준] 2839번 : 설탕배달(Python)

    [백준] 2839번 : 설탕배달(Python)

    문제설명 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 제한사항 첫째 줄에 N이 주어진다. (3 ≤ N ≤ 5000) 상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, ..

    [Java] Java 나누기 사용시 주의사항

    [Java] Java 나누기 사용시 주의사항

    안녕하세요. 개발자 Jindory입니다. 오늘은 Java에서 나누기 사용시 주의사항에 대해서 알아보고자 합니다. 만일 아래와 같은 연산을 실행했다면 어떤 결과가 나와야 할까요? int total = (int) Math.ceil(157/32); 157/32 = 4.90625 이므로 5가 나와야 하지만 결과값은 4입니다. 그 이유는 두개의 정수를 서로 나누는 작업을 수행하면 항상 내림된 정수가 나옵니다. 따라서 (int) Math.ceil(...)을 사용할 경우 아래와 같은 방법 중 하나를 선택해서 사용해야합니다. # 옵션1 int n = a / b + ((a % b == 0) ? 0 : 1); a,b 2개의 정수를 나누면 항상 내림된 정수값이 나오므로, a가 b로 딱 나누어 떨어지면 0을 더하고 딱 나누어..

    [Python] find() vs Index() 비교 / 문자열 위치 찾기

    [Python] find() vs Index() 비교 / 문자열 위치 찾기

    안녕하세요. 개발자 Jindory입니다. 오늘은 Python의 find와 index 함수의 사용법에 대해서 알아보고자 합니다. 1. find(), index() 공통적인 내용 1) 두 함수의 동일한 사용방법 '문자열'.find('찾을문자') / '문자열'.index('찾을 문자') 형태로 두 함수 모두 괄호() 안에 문자의 인덱스를 찾을때 사용한다. 문자열의 위치는 숫자로 출력되고 0부터 시작한다. 사용예시 # 문자 'x'가 첫번째 위치한 자리를 출력 >>> 'oxoxoxoxox'.find('x')) # find 함수 1 >>> 'oxoxoxoxox'.index('x')) # index 함수 1 # 문자 'o'가 첫번째 위치한 자리를 출력 >>> a = 'hello' >>> a.find('o')) # f..

    [프로그래머스] 신규 아이디 추천(Python)

    [프로그래머스] 신규 아이디 추천(Python)

    문제설명 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다. "네오"는 다음과 같이 7단계의 순차적인 처리 과정을 통해 신규 유저가 입력한 아이디..

반응형