전체 글
공부 기록
-
문제 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 자연수를 하나씩 부여받습니다. 각 사원은 딱 한 번씩 경기를 합니다. 각 경기당 A팀에서 한 사원이, B팀에서 한 사원이 나와 서로의 수를 공개합니다. 그때 숫자가 큰 쪽이 승리하게 되고, 승리한 사원이 속한 팀은 승점을 1점 얻게 됩니다. 만약 숫자가 같다면 누구도 승점을 얻지 않습니다. 전체 사원들은 우선 무작위로 자연수를 하나씩 부여받았습니다. 그다음 A팀은 빠르게 출전순서를 정했고 자신들의 출전 순서를 B팀에게 공개해버렸습니다. B팀은 그것을 보고 자신들의 최종 승점을 가장 높이는 방법으로 팀원들..
[프로그래머스][파이썬] LV.3 숫자게임문제 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 자연수를 하나씩 부여받습니다. 각 사원은 딱 한 번씩 경기를 합니다. 각 경기당 A팀에서 한 사원이, B팀에서 한 사원이 나와 서로의 수를 공개합니다. 그때 숫자가 큰 쪽이 승리하게 되고, 승리한 사원이 속한 팀은 승점을 1점 얻게 됩니다. 만약 숫자가 같다면 누구도 승점을 얻지 않습니다. 전체 사원들은 우선 무작위로 자연수를 하나씩 부여받았습니다. 그다음 A팀은 빠르게 출전순서를 정했고 자신들의 출전 순서를 B팀에게 공개해버렸습니다. B팀은 그것을 보고 자신들의 최종 승점을 가장 높이는 방법으로 팀원들..
2023.02.20 -
문제 자연수 x를 y로 변환하려고 합니다. 사용할 수 있는 연산은 다음과 같습니다. x에 n을 더합니다 x에 2를 곱합니다. x에 3을 곱합니다. 자연수 x, y, n이 매개변수로 주어질 때, x를 y로 변환하기 위해 필요한 최소 연산 횟수를 return하도록 solution 함수를 완성해주세요. 이때 x를 y로 만들 수 없다면 -1을 return 해주세요. 제한사항 1 ≤ x ≤ y ≤ 1,000,000 1 ≤ n = y: break while(1): if x >= y: break x *=3 answer+=1 if x >= y: break while((y-x) % 2 == 0): if x >= y: break x *=2 answer+=1 if x >= y: break if y < x: answer = ..
[프로그래머스][파이썬] LV.2 숫자 변환하기문제 자연수 x를 y로 변환하려고 합니다. 사용할 수 있는 연산은 다음과 같습니다. x에 n을 더합니다 x에 2를 곱합니다. x에 3을 곱합니다. 자연수 x, y, n이 매개변수로 주어질 때, x를 y로 변환하기 위해 필요한 최소 연산 횟수를 return하도록 solution 함수를 완성해주세요. 이때 x를 y로 만들 수 없다면 -1을 return 해주세요. 제한사항 1 ≤ x ≤ y ≤ 1,000,000 1 ≤ n = y: break while(1): if x >= y: break x *=3 answer+=1 if x >= y: break while((y-x) % 2 == 0): if x >= y: break x *=2 answer+=1 if x >= y: break if y < x: answer = ..
2023.02.17 -
문제 영재는 택배상자를 트럭에 싣는 일을 합니다. 영재가 실어야 하는 택배상자는 크기가 모두 같으며 1번 상자부터 n번 상자까지 번호가 증가하는 순서대로 컨테이너 벨트에 일렬로 놓여 영재에게 전달됩니다. 컨테이너 벨트는 한 방향으로만 진행이 가능해서 벨트에 놓인 순서대로(1번 상자부터) 상자를 내릴 수 있습니다. 하지만 컨테이너 벨트에 놓인 순서대로 택배상자를 내려 바로 트럭에 싣게 되면 택배 기사님이 배달하는 순서와 택배상자가 실려 있는 순서가 맞지 않아 배달에 차질이 생깁니다. 따라서 택배 기사님이 미리 알려준 순서에 맞게 영재가 택배상자를 실어야 합니다. 만약 컨테이너 벨트의 맨 앞에 놓인 상자가 현재 트럭에 실어야 하는 순서가 아니라면 그 상자를 트럭에 실을 순서가 될 때까지 잠시 다른 곳에 보관..
[프로그래머스][파이썬] LV.2 택배상자문제 영재는 택배상자를 트럭에 싣는 일을 합니다. 영재가 실어야 하는 택배상자는 크기가 모두 같으며 1번 상자부터 n번 상자까지 번호가 증가하는 순서대로 컨테이너 벨트에 일렬로 놓여 영재에게 전달됩니다. 컨테이너 벨트는 한 방향으로만 진행이 가능해서 벨트에 놓인 순서대로(1번 상자부터) 상자를 내릴 수 있습니다. 하지만 컨테이너 벨트에 놓인 순서대로 택배상자를 내려 바로 트럭에 싣게 되면 택배 기사님이 배달하는 순서와 택배상자가 실려 있는 순서가 맞지 않아 배달에 차질이 생깁니다. 따라서 택배 기사님이 미리 알려준 순서에 맞게 영재가 택배상자를 실어야 합니다. 만약 컨테이너 벨트의 맨 앞에 놓인 상자가 현재 트럭에 실어야 하는 순서가 아니라면 그 상자를 트럭에 실을 순서가 될 때까지 잠시 다른 곳에 보관..
2023.02.16 -
문제 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다.Demi가 1시간 동안 작업량 1만큼을 처리할 수 있다고 할 때, 퇴근까지 남은 N 시간과 각 일에 대한 작업량 works에 대해 야근 피로도를 최소화한 값을 리턴하는 함수 solution을 완성해주세요. 제한 사항 works는 길이 1 이상, 20,000 이하인 배열입니다. works의 원소는 50000 이하인 자연수입니다. n은 1,000,000 이하인 자연수입니다. 입출력 예 works n result [4, 3, 3] 4 12 [2, 1, 2] 1 6 [1,1] 3 0 ..
[프로그래머스][파이썬] LV.3 야근 지수문제 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다.Demi가 1시간 동안 작업량 1만큼을 처리할 수 있다고 할 때, 퇴근까지 남은 N 시간과 각 일에 대한 작업량 works에 대해 야근 피로도를 최소화한 값을 리턴하는 함수 solution을 완성해주세요. 제한 사항 works는 길이 1 이상, 20,000 이하인 배열입니다. works의 원소는 50000 이하인 자연수입니다. n은 1,000,000 이하인 자연수입니다. 입출력 예 works n result [4, 3, 3] 4 12 [2, 1, 2] 1 6 [1,1] 3 0 ..
2023.02.15 -
장고에서 superuser란 장고 관리자 화면에 접속할 수 있는 계정. 이걸 사용하기 위해서는 먼저 superuser를 생성해야한다. python manage.py createsuperuser 이렇게 입력한 다음 이메일과 패스워드(여기서는 임의로 1234로 설정)를 입력해주면 성공적으로 생성한다. 폴더에도 이렇게 파일이 만들어진 것을 확인할 수 있다. 이렇게 슈퍼 유저를 만들었으니 로컬서버를 다 구동하고 http://localhost:8000/admin/ 로 접속해보면 이런 창이 뜬다. 아까 만든 계정으로 접속해보면 이렇게 관리자 화면이 나타난다.
[Django] superuser(admin) 생성장고에서 superuser란 장고 관리자 화면에 접속할 수 있는 계정. 이걸 사용하기 위해서는 먼저 superuser를 생성해야한다. python manage.py createsuperuser 이렇게 입력한 다음 이메일과 패스워드(여기서는 임의로 1234로 설정)를 입력해주면 성공적으로 생성한다. 폴더에도 이렇게 파일이 만들어진 것을 확인할 수 있다. 이렇게 슈퍼 유저를 만들었으니 로컬서버를 다 구동하고 http://localhost:8000/admin/ 로 접속해보면 이런 창이 뜬다. 아까 만든 계정으로 접속해보면 이렇게 관리자 화면이 나타난다.
2023.02.14 -
파이토치에서 텐서는 넘파이의 ndarray를 조작하는 것과 유사하게 동작한다. 텐서 생성 및 변환 import torch torch.tensor([[1., -1], [1.,-1]]) # 2차원 텐서 생성 torch.tensor([[1., -1], [1.,-1]], device = "cuda:0") # GPU에 텐서 생성 torch.tensor([[1., -1], [1.,-1]], dtype=torch.int32) # dtype을 이용해 텐서 생성 실행 결과 tensor([[ 1., -1.], [ 1., -1.]]) tensor([[ 1., -1.], [ 1., -1.]], device='cuda:0') tensor([[ 1, -1], [ 1, -1]], dtype=torch.int32) 첫번째는 그냥 텐..
[PyTorch] 텐서 기초 문법파이토치에서 텐서는 넘파이의 ndarray를 조작하는 것과 유사하게 동작한다. 텐서 생성 및 변환 import torch torch.tensor([[1., -1], [1.,-1]]) # 2차원 텐서 생성 torch.tensor([[1., -1], [1.,-1]], device = "cuda:0") # GPU에 텐서 생성 torch.tensor([[1., -1], [1.,-1]], dtype=torch.int32) # dtype을 이용해 텐서 생성 실행 결과 tensor([[ 1., -1.], [ 1., -1.]]) tensor([[ 1., -1.], [ 1., -1.]], device='cuda:0') tensor([[ 1, -1], [ 1, -1]], dtype=torch.int32) 첫번째는 그냥 텐..
2023.02.14