분류 전체보기

    [백준][python] 2675. 문자열 반복

    문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다. 입력 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 반복 횟수 R(1 ≤ R ≤ 8), 문자열 S가 공백으로 구분되어 주어진다. S의 길이는 적어도 1이며, 20글자를 넘지 않는다. 출력 각 테스트 케이스에 대해 P를 출력한다. 예제 입력 1 복사 2..

    [백준][python]10809. 알파벳 찾기

    문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 출력 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. 예제 입력 1 복사 baekjoon 예제 출력 1 복사 1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -..

    [프로그래머스][python]두 개 뽑아서 더하기

    Question: 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. Example: My answer: def solution(numbers): answer = [] for i in range(len(numbers)): for j in range(i+1,len(numbers)): answer.append(numbers[i]+numbers[j]) answer = list(set(answer)) answer.sort() retur..

    [python] Class이해하기

    class class는 프로그래머가 지정한 이름으로 만든 하나의 독립된 공간이고, namespace라고 부른다. 클래스에 대한 또다른 설명은 다음과 같다. 함수뿐만 아니라 다양한 변수를 포함한 큰 프로그램을 하나의 묶음으로 정의하는 것이 "클래스(class)"이다. class 왜 쓰는 걸까? 같은 데이터를 가지고 계속해서 연산의 결과를 저장하며 여러가지 함수를 묶어 처리해야 하는 경우가 있다. 예를들어 계산기를 구현한다고 할 때 계속해서 global변수로 연산결과를 받아서 다음 연산을 함수로 넘겨 진행해도 되지만, 이렇게 한다면 다른 계산기로 다른 연산을 하고 싶을 때는 같은 함수를 여러개 작성해야 하는 일이 생긴다. 그래서 우리는 class를 사용하고, 그 데이터 처리에 필요한 변수와 함수를 모두 하나..

    [Pytorch] 모델 구조 확인, parameter확인

    모델 구조(architecture) 확인하기 model = models.resnet50(pretrained = True) print(model) 모델 파라미터(parameter) 확인하기 - parameters() for name, param in model.named_parameters(): count+=1 if count==1: print(param.size()) print(name) torch.Size([64]) conv1.1.weight 모델 파라미터(parameter) 확인하기 - children() for child in model.children(): count += 1 if count == 2: print(child) children()에서 name변수를 이용하면 현재 parameter(l..

    [pytorch] tensor 초기화 및 속성

    텐서(Tensors) 텐서는 배열 및 행렬과 비슷한 특수 데이터구조로, Pytorch에서는 텐서를 사용하여 모델 입출력과 파라미터 값을 인코딩해서 사용한다. Tensor는 numpy의 ndarray와 비슷하며 다른점이 있다면 GPU 기반에서 동작한다는 점이 다르다. 텐서의 initialization(초기화) 텐서를 초기화 하는 방법은 3가지 정도가 있다. 1. 직접 초기화 (데이터 타입은 자동 할당) data = [[1,2],[3,4]] x_data = torch.tensor(data) print(x_data,type(x_data)) ---------output---------- tensor([[1, 2], [3, 4]]) 2. ndarray에서 초기화 ( tensor-ndarray bridge) 아래 ..

    [python] list앞에 붙은 * (unpacking)

    unpacking을 이해하기 위해 아래와 같은 함수가 있다고 가정해보자 def print_numbers(a, b, c): print(a) print(b) print(c) 위의 print_numbers함수에 (10,20,30)을 넣어주면 10, 20, 30이 각 줄에 출력될 것이다. unpacking 인수를 순서대로 넣을 때 리스트나 튜플을 사용할 수 있는데, 리스트와 튜플 앞에 *(애스터리스크)를 붙여 인자들을 일일히 넘기는 효과와 같은 효과를 준다. 즉 "리스트의 포장을 풀어준다"라고 이해하면 된다. 함수 (*리스트) 함수 (*튜플) x = [10, 20, 30] print_number(*x) 위 함수는 위와 같은 출력의 결과를 갖게 된다. [ ref ] https://dojang.io/mod/page..

    [Pytorch] model.train(), model.eval() 의미

    https://stackoverflow.com/questions/60018578/what-does-model-eval-do-in-pytorch/60018731#60018731 What does model.eval() do in pytorch? I am using this code, and saw model.eval() in some cases. I understand it is supposed to allow me to "evaluate my model", but I don't understand when I should and shouldn't use it, or how... stackoverflow.com nn.Module에는 train time과 evaluate time에 수행하는 다른 작업을 sw..

    [python] python 파일내에 terminal 명령어 포함하는 방법

    자동화 스크립트 파일을 작성하다보면 python 파일 하나로 프로그램을 구동 및 터미널에서의 작업도 함께 작성하고 싶어질 때가 있다. Terminal에서 처리하고 싶은 명령어를 파이썬 파일에 아래 방식으로 추가하면 terminal 명령어도 문제없이 실행된다. # test.py import os, sys dir_path="./test" terminnal_command = f"mkdir {dir_path}" os.system(terminal_command) terminal_command = "명령어" os.system(terminal_comman) 파이썬 파일 내에서 dir_path를 지정하고, 이 스크립트가 수행됨에 따라 해당 dir_path에 디렉토리를 생성하고 싶다면 위와 같이 터미널 명령어를 작성하면..

    [mac] vim 에디터 color scheme

    mac OS 기준 vim color scheme setting 방식 vim 에디터는 테마를 설정하지 않으면 아래처럼 코딩하기는 물론! 보기도 싫게 생겼다. 본 포스팅에서는 color scheme을 다운받아 적용하는 방법을 기록한다. vim color schme 다운로드 https://www.slant.co/topics/480/~best-vim-color-schemes 이 곳에 가면 다양한 vim 테마들을 다운받을 수 있다. 원하는 테마를 다운받으면 되는데 해당 테마의 github에 가면 colors라는 디렉토리에 .vim 파일이 존재한다. 그 파일을 다운받으면 되는 것이다. 나는 molokai테마를 선택했고, molokai.vim에 있는 내용을 그대로 복붙해서 직접 molokai.vim파일을 생성해 붙여..