참고
참고참고
참고참고
두 개의 시퀀스로 시퀀스쌍 만들기 prefix / suffix참고
reduce 사용해서 문자열 합치기
zip 활용
Array(repeating:, count:) 사용해서 전부 0인 배열 만들어준다.
2진수 -> 10진수 -> 16진수
bit 연산자
zip, split(whereSeparator: )
stride, reduce 사용
dfs, bfs 참고
stack 사용해서 시간복잡도 단축
import Foundation var stack: Int = \[]var result: String = \[]var count = 1for \_ in 1...Int(readLine()!)! { let num = Int(readLine()!)!}print(resu
시간 초과stack 사용
시간 초과
선공이 후공보다 적거나 후공보다 2개 이상 앞설 경우빙고에 성공한 줄이 2개보다 많을때2.1. 선공(O)는 동시에 2개 성공 할 수 있다.O의 승리에서 O의 개수와 X의 개수가 같은경우X의 승리에서 O의 개수가 X의 개수보다 많은 경우2번을 선공 후공 둘다 승리한경우로
시간 초과
소숫점 오차 발생할 수 있어서 나누기 조심해야한다.https://school.programmers.co.kr/questions/42440
BFS
시간 초과재귀 함수
최대공약수로 못나누면 그 약수들도 못나눔으로 약수들은 찾을 필요 없다.약수 구하기최대공약수 & 최소공배수 구하기
O(n^2) 으로 시간 초과dictionary 사용해서 O(n)개수를 기록하는 배열 사용해서 O(n)
test case3, 2, 1, 5, 4 -> 53,5,4,2,1 -> 5
bfs사용시 removeFist() 가 O(n) 만큼 들어서 더 오래걸린다
while 사용해서 정렬 위치 찾기
combinationdfs, dfs