- boostcourse
- Machine Learning
- 빅분기
- DB
- 기초다지기
- 코딩테스트 python
- PY4E
- 코딩테스트
- boostcoures
- 데이터베이스
- Ai
- 빅데이터분석기사
- Oracle
- AI 플랫폼을 활용한 데이터 분석
- SQL
- 인공지능기초다지기
- 파이썬
- 난생처음 R코딩&데이터 분석 저서
- python
- 데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 이기적
- [멀티잇]데이터 시각화&분석 취업캠프(Python)
- 빅데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 프로그래머스
- 정보처리기사
- 네이버부스트캠프
- r
- 이것이 취업을 위한 코딩테스트다 with 파이썬
- 오라클
- 부스트코스
- Today
- Total
목록전체 글 (162)
매일공부
출처 [저서] : 이것이 취업을 위한 코딩테스트다 with 파이썬 구현 = 아이디어를 코드로 유형 : 완전탐색, 시뮬레이션 메모리 사용량 with Python : int 자료형 데이터 개수 리스트 길이 메모리 사용량 ~ 1,000,000 약 4KB 10,000,000 약 40MB >> 사용량 제한보다 적은 크기의 메모리 사용 해야함 시간제한 1초에 2,000만 번 연산 수행 가정 >> 데이터 개수 = 100만 개, 시간복잡도 O(NlogN)이내의 알고리즘 사용해야함 예시] n = 1,000,000일 때, Nlog₂N =약 20,000,000 접근방법 고차원적인 사고력x >> 문법에 익숙하면 ok, 문제를 잘 읽으면 해결 가능 1. 상하좌우 문제 # 이동 횟수에 비례 # >> 이동횟수:시간복잡도 = N:O..
#저서 : 이것이 취업을 위한 코딩테스트다 with 파이썬 #기출 : 2018 E 기업 알고리즘 대회 # 문제 N이 1이 될 때까지 다음의 두 과정 중 하나를 반복적으로 선택 수행할 때, N이 1이 될때까지 1번 혹은 2번의 과정을 수행해야하는 쵯솟값 출력 1. N에서 1을 뺀다 2. N을 K로 나눈다 (단, N이 K로 나누어떨어질 때만 선택) # 제한사항 첫 줄 : N(2 단점 : 만약 N이 100억 이상이라면 시간 효율↓ > N이 K의 배수가 되도록 한 번에 빼는 것이 효율적 # 책의 답안 예시 n, k = map(int, input().split()) cnt = 0 while True: target = (n//k) * k #k의 배수 확인 cnt += (n-target) #배수가 될 때까지 한번에 ..
#저서 : 이것이 취업을 위한 코딩테스트다 with 파이썬 #기출 : 2019 국가 교육기관 코딩 테스트 # 문제 룰을 지켜서 가장 높은 숫자카드 뽑기 1. 카드는 n행 x m열 로 놓여있음 2. 먼저 뽑고자 하는 행 선택 3. 그 행에서 가장 낮은 숫자 카드 뽑기 # 제한사항 첫 줄 : 공백을 기준으로 n, m의 개수가 자연수로 주어짐 ( 1
#저서 : 이것이 취업을 위한 코딩테스트다 with 파이썬 #기출 : 2019 국가 교육기관 코딩 테스트 # 문제 주어진 수들을 M번 더하여 가장 큰 수 만들기. # 제한사항 배열의 특정한 인덱스에 해당하는 수가 연속으로 K번 초과하여 더해질 수 없음. 서로 다른 인덱스에 해당하는 수가 같은 경우에도 서로 다른 것으로 간주 첫째 줄 : N(2 m // k == 나눈 몫 만큼 가장 큰 수 1번이 더해짐 수정 풀이 n, m, k = map(int, input().split()) n_arr = sorted(list(map(int, input().split())), reverse=True) answer = n_arr[0]*(m-m//k)+n_arr[1]*(m//k) print(answer) => 반복문도 좋지만..

* 이것이 취업을 위한 코딩 테스트다 with 파이썬의 부록A를 참고하였습니다. # eval() 문자열 형식의 수식 계산 # itertools : 반복되는 형태의 데이터 처리 - 순열 : data에서 r개를 뽑아 일렬로 나열하는 모든 경우 from itertools import permutations data = [] print(list(permutaions(data, 3))) - 조합 : data에서 r개를 뽑아 순서 고려x 나열하는 모든 경우 from itertools import combinations data = [] print(list(combinations(data, 2))) - 중복가능한 순열 from itertools import product data = [] print(list(prod..

이기적 SQL 개발자 기출문제 500제(2023) : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com SQL 복습도 할 겸, 자격증도 생각하고 있는데, 가장 가까운 시험이 5월에 SQL 개발자 접수가 있고, 전문가는 연 2회이지만, 개발자는 연 4회라서 빠른 취득을 원한다면 개발자가 훨씬 좋아보였습니다. 데이터자격시험 데이터아키텍처 준전문가 제54회 - 3.20~24 4.7 4.23(일) 5.12 5.19 - www.dataq.or.kr 응시료는 SQL 개발자(SQLD) 50,000원. 자세한 일정은 홈페이지를 참고하세요! SQL 개발자는 전문가보다 훨씬 쉬워서 빠르게 문제만 풀면서 개념 정리하기 좋았어요. #시험출제경향 책을 펼치면 처음에 출제 경향과 시험..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음 정확도 테스트는 바로 통과! 하지만 효율성에서 전체 실패.... from collections import Counter def solution(participant, completion): p_cnt = Counter(participant) c_cnt = Counter(completion) answer = [p for p in p_cnt.keys() if (p not in completion) or (c_cnt[p] != p_cnt[p])] return s for s in answer 일반 for문보단..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr > 프로그래머스의 여행경로 문제 처음에 enumerate 활용했지만 그 경로가 아닌 경우 돌아가는 루트가 없어서 실패 프로그래머스 문제 풀이 여행 경로 이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL 여행 경로 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 gurumee92.tistory.com 이분이 설명해주신 예시보고 차근차근 이해하면서 DFS로 다시 작성 (코드는 위의 게시글 참고!) 출발-도착 형태로 경로 ..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주의사항 : 해당 k진수로 변환했을 때 0으로 나눈 수 기준 > 그 수를 k진법이 아닌 10진수로 봤을 때 소수 여부 (문제를 꼼꼼히 읽자...!!!!😭) def k_num(n, k): #k진법으로 변환 if k == 10: return n #10진수면 그대로 반환 else: base = '' while n > 0: n, mod = divmod(n, k) base += str(mod) return base[::-1] def prime_num(num): #소수여부 판단 p_cnt = 0 for k in rang..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건을 정말 꼼꼼히 읽어야함.. def solution(s): _answer = [] words = s.split(' ') for word in words: answer = "" for idx, w in enumerate(word): if idx%2 == 0: answer += w.upper() elif idx%2 == 1: answer += w.lower() else: answer += w _answer.append(answer) return ' '.join(_answer) split() 와 split(' ..