본문 바로가기

전체 글128

[백준 2447번] 별 찍기 - 10 in python 문제 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제 출력 1과 같다. 입력 첫째 줄에 N이 주어진다. N은 3의 거듭제곱이다. 즉 어떤 정수 k에 대해 N=3k이며, 이때 1 ≤ k < 8이다. 출력 첫째 줄부터 N번째 줄까지 별을 출력한다. 예제 입력 1 27 예제 출력 1 **************************.. 2021. 10. 28.
int형 숫자를 0을 앞에 붙인 문자열로 변경 in python target=1 print(format(target,'02')) print('{0:03d}'.format(target)) 결과 : 01 001 개인적으로 밑에 것을 더 선호 2021. 10. 27.
문자열 내부 공백 제거 in python 문자열 처리를 하다보면 공백들이 들어간 문자열들을 볼 수 있다. 예를 들어, 1: " asdf asdf asdf asdf " 2: "asdf asdf asdf asdf" 이런 경우들이 있다. 이럴 땐, str.strip(), str.replace(), str.split()들을 써주면서 제거해주면 가볍게 해결이 된다. S=input() #' asdf asdf asdf ' print(S.split()) split()함수로 ['asdf', 'asdf', 'asdf']가 생성된다. 좌우 공백이 있는 문자열이 불편하다 싶으면, S=input() #' asdf asdf ' print(S.strip()) strip()함수를 써주면 'asdf asdf'가 나온다. 또한 아예 공백이 없는 문자열로 만들고 싶다? S=in.. 2021. 10. 26.
함수 정의 in python 함수 정의할 때, def func(x : int, y: float=1.0) -> int: ~~~~ return ~~ 여기서 x 인자 이후 콜론(:) 은 인자의 형식을 할당해준다. 지금은 x를 int형 인자만 받아온다는 뜻. y 는 float형인데 기본값(=)으로 1.0이 설정된다. 마지막으로 ->는 return값이 int형 변수란 뜻이다. 2021. 10. 26.
파이썬으로 입력받기 - input() or sys.stdin.readline() 보통 백준에서 알고리즘 공부를 하다보면 입력을 넣어줘야하는 코드를 작성해야한다. (프로그래머스에선 그런거 필요없는데....) 여튼 그래서 보통 input()을 쓰거나 a,b=map(int, input().split()) 을 써서 받은 string값을 정수인 int값으로 바꿔주었다. 그러다가 유용한게 있어서 적어놓는다. input대신 sys.stdin.readline()을 하면 시간초과를 줄여줄 수 있다. 안그래도 다른 언어에 비해 속도가 낮은 파이썬이라 시간초과가 많이 나는데 이 정보는 유용하다. import sys T=int(sys.stdin.readline())# strip은 문자열의 앞뒤에 있는 공백문자들을 제거해준다. for i in range(T): a,b=map(int, sys.stdin.re.. 2021. 10. 25.
DataFrame 열 또는 행별 최빈값 확인 - df.mode() df1=df.mode() print(df1) # 최빈값 = 가장 자주 나오는 값 # 인자로는 # axis = 0('index')과 1('columns'), 0은 열이고 1은 행에서 기본값은 0이다. # numeric_only = bool, 기본값은 False로 True인 경우 숫자열이나 행에만 적용됨. # dropna : bool, 기본값은 True. NaN/NaT를 고려하지 않는다. # ~.mode(axis=0, numeric_only=False, dropna=True) 2021. 10. 9.