728x90

분류 전체보기 199

[Python] 형변환(atoi, itoa) 및 패턴 매칭

atoi = String to Integer = 문자열을 숫자로 변환하는 녀석 입력을 받을때 int() 형을 붙이지 않고 input() 만 하면 숫자라도 바로 문자열로 변경됩니다. ex ) str = input() 이렇게 하면 숫자를 넣더라도 문자열로 자동 변환됨. (문자와 숫자 동시 입력 가능) itoa = Integer to String = 숫자를 문자열로 변환하는 녀석 입력을 받을때 int()를 붙여주면 된다. ex) num = int(input()) 고로면 이때 정수만 입력가능 단, 숫자만 입력가능 추가로 정수를 문자열로 받고싶을땐? str() 을 사용하면됩니다. ex) str(num) 이렇게 하시면 위에서는 정수로 받았지만 현재는 문자열로 됩니다. 패턴 매칭 브루트포스(BruteForce, 완전..

[SWAE-Python] 4861. 회문1/4864. 문자열 비교/4865. 글자수

4861. 회문1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 T = int(input()) for tc in range(1, T + 1): # N = 배열의 크기, M = 회문의 길이 N, M = list(map(int, input().split())) arr = [0] * N # 영어가 들어갈 칸 만들기 result = [] #가로(R, 행) 확인 r_lst = [] #회문 모든 문자열 받기 , 배열의 크기만큼 i가 반복한다. for i in range(N): #문자 넣기 char = input() #넣어진 문자를 바로 가로 확인 배열에 넣어준다. ..

알고리즘/SWAE 2021.02.18

[Python] 이진 탐색(feat. [SWEA]4839.이진탐색)

이진 탐색은 공식(?많이쓰는) 코드를 활용하는 방법을 생각해보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 def binSearch(key): cnt = 0 while left key: right = c else: left = c cnt += 1 T = (input()) for tc in range(1, T+1) # 보통 이런식의 테스트 케이스가 주어짐. #예)입력값을 입력하고 P, A, B = map(int, input().split()) #위 이진 탐색을 써준다 binSearch(A) binSearch(B) Colored by Color Scripter cs 이 친구를 활용하여 4839번 문제를 풀어보시면 됩니다.

[Python] 순차 검색

순차 검색 - 일렬로 되어 있는 자료를 순서대로 검색하는 방법 - 가장 간단, 직관적 - 순차구조로 구현된 자료구조에서 원하는 항목을 찾을때 - 알고리즘 단순 구현이 쉬움, 수행시간 급격 증가 비효율적 검색 과정 - 첫번째 원소부터 수서대로 검색 대상과 키 값(우리가 찾는 값)이 동일한지 찾는다. - 찾으면 그 원소의 인덱스(위치)or 값을 반환 - 자료구조 마지막까지 검색한다음 찾지 못하면 실패. - 정렬되어 있지 않은 경우 - 찾고자 하는 원소의 순서에 따라 비교회수가 결정됨 시간 복잡도:O(n) 예제 문제 ) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 arr = [4,9,11,23,19,7] key = 10 for i in range(len..

[Python] 2차원 배열 과 부분집합

2차원 배열의 선언 1차원 list를 묶어놓은 list 이다. 2차원 이상 다차원 list는 차원에 따라 index를 선언 2차원 list의 선언 : 세로길이 + 가로길이 python 에서는 데이터 초기화를 통해 변수선언과 초기화가 가능하다. arr = [[0,1,2,3,],[4,5,6,7]] - 2행 4열의 2차원 list 0 1 2 3 4 5 6 7 ex) arr[1][2] = 6 arr[2][1] = 인덱스 에러 보통 문제에서는 행과 열이 주어진다. 3, 4 입력은 아래와 같이 주어진다면 1 2 3 4 5 6 7 8 9 10 11 12 즉 행과 열, 2차원 값이 주어진다. *꼭 길이가 같지않아도된다 ex )1234 123 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1..

[SWAE-Python] 2072. 홀수만 더하기, 1986. 지그재그 숫자, 1926. 간단한 369게임

비교적 간단한 문제 2개와.. 홀수만 더하기 1 2 3 4 5 6 7 8 9 10 T = int(input()) #테스트 케이스 3개 # 10개의 수를 입력 받아 , 홀수 값만 더해라. for tc in range(1, T+1): nlst = list(map(int, input().split())) temp = 0 for i in range(0,len(nlst)): if nlst[i]%2==1 : temp += nlst[i] print("#{} {}".format(tc, temp)) cs 지그재그 숫자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 T = int(input()) #테스트 케이스 3개 # 10개의 수를 입력 받아 , 홀수 값만 더해라. for tc i..

알고리즘/SWAE 2021.02.15

[SWAE-Python] 6485. 삼성시의 버스노선, 1959. 두개의 숫자열

1 삼성시의 버스노선 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 T = int(input()) for tc in (1,T+1): N = int(input()) bus_stop = [0] * (5001) #버스 정류장 체크 포인트 for i in range(N): A,B = map(int, input().split()) # 해당 정류장에 지나는 버스의 대수 누적 for j in range(A, B+1): bus_stop[j] += 1 P = int(input()) # 우리가 확인하고 싶은 버스정류장의 수 print("#{}".format(tc), end = " ") for i in range(P): C = int(input()) print(bus_sto..

알고리즘/SWAE 2021.02.15

전기버스 문제

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576#리얼 이동하며 확인하고 뒤로갔다 앞으로갔다T =int(input()) for tc in range(1,T+1): #K : 이동 가능 거리 #N : 마지막 종점 위치 #M : 충전소의 개수 K, N, M =map(int,input().split()) charge =map(int,input().split()) bus_stop = [0] * (N+1) #================================================= 충전소 표시. ..

카테고리 없음 2021.02.10
728x90