여니의 취준 준비 253

[20546] 기적의 매매법 in Java

https://www.acmicpc.net/problem/20546 20546번: 🐜 기적의 매매법 🐜 1월 14일 기준 준현이의 자산이 더 크다면 "BNP"를, 성민이의 자산이 더 크다면 "TIMING"을 출력한다. 둘의 자산이 같다면 "SAMESAME"을 출력한다. 모든 결과 따옴표를 제외하고 출력한다. www.acmicpc.net 1. Scanner를 사용한 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int joon_money=sc.nextInt(); int joon_cnt=0; int min_money=joon_mone..

[SWEA] 1961. 숫자 배열 회전 in Java

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pq-OKAVYDFAUq&categoryId=AV5Pq-OKAVYDFAUq&categoryType=CODE&problemTitle=1961&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com Rotate 함수를 선언해서 배열을 회전시키기! 직접 회전하기 전과 회전한 후의 인덱스 변화를 살펴보고 규칙을 찾아서 함수를 정의해주면 된다. ..

[SWEA] 2001. 파리 퇴치 in python

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PzOCKAigDFAUq&categoryId=AV5PzOCKAigDFAUq&categoryType=CODE&problemTitle=2001&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import java.util.Scanner; public class Solution { public static void main(String..

[SWEA] 1979. 어디에 단어가 들어갈 수 있을까 in Java

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PuPq6AaQDFAUq&categoryId=AV5PuPq6AaQDFAUq&categoryType=CODE&problemTitle=1979&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 노트북에는 인텔리제이가 깔려있기 때문에.. 일단 인텔리제이에서 프로젝트 생성하는 방법 참고한 블로그 주소도 첨부! https://simqizza..

[SWEA] 1959. 두 개의 숫자열 in JAVA

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpoFaAS4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com A나 B를 자유롭게 움직여서 서로 마주보는 숫자들을 곱한 뒤 모두 더할때의 최댓값을 구하는 문제 A의 길이 = N B의 길이 = M M이 큰 경우, N이 큰 경우, N과 M이 같은 경우 총 3가지의 경우를 고려해줘야 한다. 1) M이 큰 경우 (NM) : A의 배열 길이 > B의 배열 길이 즉, B를 움직이면서 A의 배열 요소와 곱해준다. 1번과 반대로 진행하면 됌. 3) N == M인 경우 : f..

[Coding Test] 자바 문법, 속성 총 정리

목차 1. public static void main(String[] args){} 자동 생성 psvm + enter > 단축키 2. System.out.println() 자동 생성 sout + enter (+ 클래스 이름은 Main) 1. 입력 총 3가지의 방법이 있다. Scanner, BufferedReader, StringTokenizer 입력 처리 속도 : (빠름) BufferedReader > StringTokenizer > Scanner (느림) BufferedReader, StringTokenizer은 문자열로 활용하기 위해 사용한다. 주로 BufferedReader를 사용한다. (1) Scanner Scanner sc=new Scanner(S..

[프로그래머스] 게임 맵 최단거리 in python

https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr 문제를 보며 요약한 내용=> 내 위치 : (1,1) 상대 위치 : (n,m) 검은색 = 막힌 길 (0) 흰색 = 갈 수 있는 길 (1) 맵 벗어난 길은 갈 수 없다. 상대 팀 진영으로 가는 가장 빠른 길 -> bfs? 도착못할수도 있다. -> visited[x][y]=-1이면 도착 못한 거! => -1 출력 ..

[프로그래머스] 이진 변환 반복하기 in python + (bin, oct, hex 내장함수)

https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr 이 문제는 입력받은 문자열의 개수를 이진법으로 바꿨을때의 값이 1이 될 때까지 아래 과정을 반복하는 것! 1. 입력 받은 문자열에서 0을 모두 제거한다. 2. 1의 개수를 이진법으로 변환한다. 3. 이진법으로 변환한 값이 딱 "1"이 될 때까지 위 과정을 반복한다. def solution(s): zero_cnt=0 # 0의 개수 change_cnt=0 # 변환 횟수 while s!='1': # 1. 0 제거 word='' for i in s: if i=='1': word+=i else: zero_cnt+=1 after_cnt=len(..

[Python] 반올림함수 round | (사사오입, 오사오입)

1. 사사오입 : 4 이하면 버림, 5 이상이면 올림 2. 오사오입 : 5 미만의 숫자는 버림, 5 초과의 숫자는 올림 5일때 처리해주는 방식이 사사오입 방식과 다르다. 5의 앞자리가 짝수 -> 버림 5의 앞자리가 홀수 -> 올림 흔히 파이썬에서 쓰는 round 함수는 오사오입 방식이다. round 함수로 사사오입 방식을 구현하려면? 해당 값이 양수이면 0.5를 더해주고 음수이면 0.5를 빼주면 된다. 왜 위처럼 해야하는 지 이제부터 상세하게 설명해보기! 오사오입 방식은 5의 앞자리수가 짝수일 때 버린다. 이를 해결하기 위해 0.5를 더해주고 빼주는 것이다. 예시를 들면 사사오입 방식대로 2.5를 반올림하면 3이 나와야한다. 하지만 오사오입 방식에서는 2가 나온다. 왜냐하면 5의 앞자리 수가 짝수이기 때..

[Coding Test] 시간 복잡도 총정리!

입력의 최대 크기와 알고리즘의 시간 복잡도를 보고 수행 시간을 어림짐작할 수 있어야 한다고 해요! 알면서도 매번 코드 구현만 하던 나 자신 반성하며,, 이번 기회에 시간 복잡도에 관련된 내용을 정리하는 포스팅을 해보려고 합니다 ! 알고리즘 시간복잡도는 주로 빅오 표기법을 사용해서 표기합니다. O < (1) < O(logn) < O(N) < O(nlogn) < O(n^2) < O(n^3)