목록분류 전체보기 (770)
컴공생의 다이어리
#include int main(){ int &ref=4; std::cout
#include int change_val(int &p){ p=3; return 0; } int main(){ int number=8; std::cout
어떠한 수 N이 1이 될 때까지 다음의 두 과정 중 하나를 반복적으로 선택하여 수행하려고 한다. 단, 두번째 연산은 N이 K로 나누어 떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. 질문 N과 K가 주어질 때, N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 코드로 구현 아래는 파이썬으로 구현한 코드이다. N,K=map(int,input().split()) result=0 while True: if N%K==0: N/=K else: N-=1 result+=1 if N==1: break print(result) 아래는 C/C++으로 구현한 코드이다. #include int main() { int N, K; int result = ..
숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 뽑는 게임이다. 단, 게임의 룰을 지키며 카드를 뽑아야 하고 룰은 다음과 같다. 숫자가 쓰인 카드들이 N X M 형태로 놓여 있다. 이때 N은 행의 개수를 의미하며, M은 열의 개수를 의미한다. 먼저 뽑고자 하는 카드가 포함되어 있는 행을 선택한다. 그 다음 선택된 행에 포함된 카드들 중 가장 숫자가 낮은 카드를 뽑아야 한다. 따라서 처음에 카드를 골라낼 행을 선택할 때, 이후에 해당 행에서 가장 숫자가 낮은 카드를 뽑을 것을 고려햐여 최종적으로 가장 높은 숫자의 카드를 뽑을 수 있도록 전략을 세워야 한다. 질문 카드들이 N X M 형태로 놓여 있을 때, 게임의 룰에 맞게 카드를 뽑는 프로그램을 만드시오. 코드로 구현 아..
큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하야 가장 큰 수를 만드는 법치이다. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없는 것이 이 법칙의 특정이다. 질문 배열의 크기 N, 숫자가 더해지는 횟수 M, 그리고 K가 주어질 때 큰 수의 법칙에 따른 결과를 출력하시오. 코드로 구현 아래는 파이썬으로 구현한 코드이다. N,M,K=map(int,input().split()) data=list(map(int,input().split())) data.sort() first=data[N-1] second=data[N-2] result=0 count1=(M//(K+1))*K+M%(K+1) count2=M-count1 result=count1..
질문 카운터에서 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 무한히 존재한다고 가정할 때, 손님에게 거슬러줘야 할 돈이 N원일 때 거슬러 줘야 할 동전의 최소 개수를 구하라. 코드로 구현 아래는 파이썬으로 구현한 코드이다. N=int(input()) count=0 coin_type=[500,100,50,10] for coin in coin_types: count+=N//coin#화폐로 거슬러 줄 수 있는 동전의 개수 세기 N%=coin print(count) 아래는 c/c++으로 구현한 코드이다. #include int main(){ int N; int count=0; std::cin>>N; int coin[4]={500,100,50,10}; for(int i=0;i
표준 라이브러리란 특정한 프로그래밍 언어에서 자주 사용되는 표준 소스코드를 미리 구현해 놓은 라이브러리를 의미한다. 파이썬에서 지원하는 표준 라이브러리는 굉장히 다양하다. 오늘은 6가지 라이브러리에 대해 알아보겠다. 내장함수: print(), input()과 같은 기본 입출력 기능부터 sorted()와 같은 정렬 기능을 포함하고 있는 기본 내장 라이브러리이다. 파이썬 프로그램을 작성할 때 없어서는 안되는 필수적인 기능을 포함한다. itertools: 파이썬에서 반복되는 형태의 데이터를 처리하는 기능을 제공하는 라이브러리이다. 순열과 조합 라이브러리를 제공한다. heapq: 힙(Heap) 기능을 제공하는 라이브러리이다. 우선순위 큐 기능을 구현하기 위해서 사용된다. bisect: 이진 탐색(Binary S..
입력 파이썬에서 데이터를 입력받을 때는 input()을 이용한다. input()의 경우 한 줄의 문자열을 입력받도록 한다. 만약 파이썬에서 입력받은 데이터를 정수형 데이터로 처리하기 위해서는 문자열을 정수로 바꾸는 int()함수를 사용해야 한다. c=input() #데이터 입력받기 n=int(input()) #데이터를 정수로 입력받기 여러 개의 데이터를 입력받을 때는 데이터가 공백으로 구분되는 경우가 많다. 그래서 입력받은 문자열을 띄어쓰기로 구분하여 각각 정수 자료형의 데이터로 저장하는 코드의 사용 빈도가 높다. 이때는 list(map(int, input().split()))을 이용하면 된다. data=list(map(int,input().split())) #각 데이터를 공백으로 구분하여 입력 공백으로..
프로그래밍을 하다 보면 똑같은 코드가 반복적으로 수행되어야 하는 경우가 있는데 이때 함수를 사용해서 이러한 수고를 덜어줄 수 있다. 파이썬에서의 함수의 구조는 아래와 같다. 함수를 작성할 때 함수 내부에서 사용되는 변수의 값을 전달받기 위해 매개변수를 정의할 수 있다. 이후에 함수에서 어떠한 값을 반환하고자 할 때는 return을 이용한다. 하지만 함수에서 매개변수나 return문이 필요하지 않다면 생략 가능하다. def 함수명(매개변수): 실행할 소스코드 return 반환 값 사칙 연산을 하는 함수들을 만들어보면 아래와 같다. def add(a,b):#덧셈 return a+b def sub(a,b):#뺄셈 return a-b def div(a,b):#나눗셈 return a/b def mul(a,b):#..