본문 바로가기
728x90

Algorithm/Python82

[programmers]python 120836 순서쌍구하기 # 순서쌍구하기 # 두개의 수의 곱이 n이 나오도록 하는수중 몇개가 나오나 # 최대로 나올수있는수는 n의 수 # 반복문으로 길이만큼 # 시간초과???? 너무 생각을 복잡하게했다... def solution(n): answer = 0 # 정방향 하나 역방향 하나를 구현해 코드 시간을 줄이자 for i in range(1,n+1): # range(start,end,step)구조로 step에 -1를 넣으면 역순 # reversed(range(n+1)) 같은 형식으로 reversed로도 사용 가능 # for j in range(n,0,-1): # if i*j == n: # print(i,j,"i와j") # answer+=1 # break if n % i == 0: answer += 1 # print(i) ret.. 2024. 1. 16.
[programmers]python 147355 크기가 작은 부분문자열 # 크기가 작은 부분 문자열 # 숫자 문자열 t,p가 주어질때 t에서p와 길이가 같은 부분문자열중 # 이 부분 문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은것 return # p의 길이만큼 t의 문자열을 나누고 그 나눈 문자열중 p보다 작은 문자열 수를 return # t의 길이만큼 반복하며 배열에 담고 그 배열을 하나씩 비교하자.. def solution(t, p): answer = 0 # 낮은 문자열 수 # print(len(p)) # 문자열 길이 a=[] b='' cnt=0 # print(len(t),len(p)) for i in range(len(t)): # t 길이만큼 반복 for j in range(len(p)): # p 길이만큼 반복 if cnt-1 ==len(t)-len(p): .. 2024. 1. 12.
[programmers]python 120909 제곱수판별 # 제곱수 판별하기 # 어떤 자연수를 제곱했을때 나오는정수 = 제곱수 # n 이 주어질때 제곱수면 1 아니면 2 # n 이 제곱수인지를 판단하려면 ??? # 제곱수... 4 9 16....등등 # 반복문 후 i의 제곱값이 n과 같은지 def solution(n): for i in range(n): if i**2==n: # print(i) return 1 return 2 print(solution(144)) print(solution(4)) print(solution(6)) 2024. 1. 8.
[programmers]Python 181932 코드처리하기 # 코드처리하기 # code를 앞부터 읽으며 문자가 1이면 mode 변경 # mode에 따라 code를 읽으며 문자열 ret 생성 # mode는 0 / 1 이 있으며 idx 를 0부터 code 길이 -1 까지 키워나가며 # code[idx] 값에 따라 행동 # 0일때 code[idx]가 1이면 idx가 짝수일때만 ret의 맨뒤에 code[idx] 추가 # 1일때 code[idx]가 1이면 idx가 홀수일때만 ret의 맨뒤에 code[idx] 추가 # 시작은 0 # 문자열 추가는 + / 배열에서의 추가는 append # 길이만큼 빼고 모드를 나눠 처리.. def solution(code): ret = '' mode=0 for i in range(0,len(code)): if mode==0 : if code.. 2024. 1. 5.
[programmers]python 120854 배열의 원소길이 # 배열 원소의 길이 # strlist가 매개변수로 주어진다. # 배열속 문자열의 크기를 배열로 return # 난이도가 생각보다 쉬우니.. 더 간편하게 짜볼까? # list와 map으로 묶으면 라인으로 끝낸다 def solution(strlist): answer = [] for i in strlist: answer.append(len(i)) return answer def sol(strlist): return list(map(len,strlist)) print(sol(["We", "are", "the", "world!"])) 2023. 12. 21.
[programmers]python 181832 정수 나선형으로 배치하기 # 나선형으로 배치하기 # n 이 주어지면 n x n 배열을 만듬 근데 # 나선형으로 배치하는??? 어떻게 하는겨... # 이번적인 배열은 완성... 그런데 나선형? # 아니면 2차원 배열에 하나씩 넣어보자 # 일단 배열을 초기화 해주고 # 순서에 때려박어 def solution(n): if n ==1 : return [[1]] # 배열 초기화 answer=[[0 for j in range(n)]for i in range(n)] x=0 # x/y 값을 초기화 해서 하나씩 집어넣자 y=0 case = 6 # 키패드 방향키 순 4862 for i in range(n*n): answer[x][y]= i+1 # 일단 옆으로 한줄 if case == 6: y +=1 if y == n-1 or answer[x][y.. 2023. 12. 19.
728x90