본문 바로가기

분류 전체보기228

[프로그래머스] 코딩테스트 기초 [내 풀이] def solution(date1, date2): return 1 if int(''.join(map(str, date1))) - int(''.join(map(str, date2))) 2023. 5. 31.
[인프런] spring MVC 1편 1. 프로젝트 생성 2. Hello서블릿 welcome page 추가 package hello.servlet; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; @ServletComponentScan //서블릿 자동 등록 @SpringBootApplication public class ServletApplication { public static void main(String[] args) { SpringApplication... 2023. 5. 25.
[프로그래머스] 코딩 기초 트레이닝 #모든 원소들의 곱은 함수가 없기 때문에 직접 구해야 한다. #다른 사람은 m = eval( )을 이용해서 문자열 수식을 만든 다음에 계산했다. [내 풀이] def solution(num_list): gob = 1 for x in num_list: gob = gob*x hob = sum(num_list) return 1 if gob m else 0 [내 풀이] def solution(my_string, is_prefix): return int(my_string[:len(is_pref.. 2023. 5. 22.
[프로그래머스] 코딩테스트 입문 문제 풀이 [내 풀이] - 문자열 수식이라서 eval() 함수를 사용하려고 했다. def solution(quiz): return ["O" if eval(q.replace('=', '==')) else "X" for q in quiz] [참고 풀이] - 코드 길이는 좀 더 길지만 훨씬 가독성이 좋다고 느껴졌다. - 이 코드의 댓글에 eval() 함수는 현업에서 사용하면 안 된다는 이야기가 있었다. 보안 때문이라고 하던데... 다음에 찾아봐야겠다. 잘 정리되어 있던 글이 있어서 링크 첨부: (https://velog.io/@kylee31/eval) def valid(equation): equation = equation.replace('=', '==') return eval(equation) def solution(.. 2023. 5. 21.
[프로그래머스] 코딩테스트 입문 문제 풀이 def solution(n): answer = 0 for _ in range(n): answer += 1 while answer % 3 == 0 or '3' in str(answer): answer += 1 return answer [내 풀이] - 최대 공약수 구하는 함수 math.gcd(a,b) 활용하지 못해서 추가 함수를 구현해야 했던 점이 아쉽다. - 분자, 분모를 기약분수로 만들지 못해서 불필요한 처리가 생겼다. #약수 구하는 함수? def soinsu(x): i = 2 res = [] while i 2023. 5. 19.
[프로그래머스] 코딩테스트 입문 문제 풀이 def solution(i, j, k): totalCount = 0 for x in range(i, j+1): totalCount += str(x).count(str(k)) return totalCount# 다른 사람 풀이 장점: 1) for문 안에서 어차피 한 줄일 거라면, 리스트 컴프리헨션을 이용하면 앞에 한 줄로 표현 가능(str(i).count(str(k)) 이 부분) 2) 리스트에 담기 때문에 sum( ) 함수 사용 가능 def solution(i, j, k): answer = sum([ str(i).count(str(k)) for i in range(i,j+1)]) return answer [내 풀이] - 너무 복잡해져 버렸다. def solution(emergency): #인덱스가 필요하니까.. 2023. 5. 16.
[Python] 요약 정리 ✅ 출력형식 %(a, b, c) 와 같이 표현하는 것 기억! a, b = map(int, input().strip().split(' ')) print("%d + %d = %d" %(a, b, a+b)) ✅ '구분자'.join(리스트) 리스트의 구성 원소들을 구분자를 이용하여 열거해서 하나의 문자열로 합쳐준다. ✅ divmod() 내장 함수 결과로 (몫, 나머지) 값을 갖는 튜플을 반환한다. divmod(x, y) = (x // y, x % y) ✅ 리스트 안의 모든 값에 특정 함수를 적용시키려고 할 때 = map ! * 내 코드 def solution(strlist): answer = [] for x in strlist: answer.append(len(x)) return answer * 깔끔한 참고 코.. 2023. 5. 11.
코테준비 [인프런] 파이썬 알고리즘 문제풀이 2023. 5. 9.
부트스트랩 다운로드 및 적용하 https://getbootstrap.com/ Bootstrap Powerful, extensible, and feature-packed frontend toolkit. Build and customize with Sass, utilize prebuilt grid system and components, and bring projects to life with powerful JavaScript plugins. getbootstrap.com 2023. 2. 2.
[JPA] N+1 문제 https://incheol-jung.gitbook.io/docs/q-and-a/spring/n+1 2023. 1. 26.
[IntelliJ] 라이브 템플릿 생성하기 (테스트 코드 템플릿) https://blog.naver.com/nateen7248/222184184776 2022. 12. 15.
[1분 요약] 백트래킹(Backtracking)이란? 백트래킹 이란? 해를 찾아가는 도중, 현재의 경로는 해가 될 수 없는 경우 그 경로를 더 이상 가지 않고 되돌아가는 기법을 말한다. DFS 알고리즘에서, 절대 불가능한 경우에 대해 조건문을 걸어 탐색을 중지하고 되돌아가는 경우가 대표적인 예이다. 불필요한 경로를 차단한다는 의미에서, '가지치기'라는 용어를 쓰기도 한다. 때문에 찾아가야할 경우의 수를 줄일 수 있으므로, 백트래킹 기법을 이용해 시간 단축을 노려볼 수 있다. * 핵심 표현 해가 될 가능성이 있는 경우, '유망하다(promising)' 라고 표현하고, 해가 될 가능성이 없는 경우에 그 경로를 가지 않게 하는 행위에 대해서는 '가지치기(pruning)'한다고 표현한다. 2022. 7. 27.