전체 글 (106) 썸네일형 리스트형 [SWEA] SWEA 2105 - 디저트 카페 (JAVA) https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5VwAr6APYDFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import java.util.*; import java.io.*; public class Solution { static int T, N; static int[][] map; static int sX, sY; static int ans; static boolean[][] visited; static int[] dx = {1,1,-1,-1}; static int[] dy = {-1,1,1,-1}; .. [SWEA] SWEA 5644 - 무선 충전 (JAVA) https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRDL1aeugDFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import java.util.*; import java.io.*; public class Solution { static class Point{ int x; int y; Point(int x, int y){ this.x = x; this.y = y; } } static int[][] map; static int[] dx = {0,0,1,0,-1}; static int[] dy = {0,-1,0,1.. [SWEA] SWEA5658 - 보물상자 비밀번호 (JAVA) https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRUN9KfZ8DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import java.util.*; import java.io.*; public class Solution { static int T; static int N,K; static ArrayList numList; static TreeSet treeSet = new TreeSet(); static void run(){ int side = N/4; //한 변에 들어가는 문자 수 int rotate = s.. [PGS] 프로그래머스 - N개의 최소공배수 (JAVA) https://school.programmers.co.kr/learn/courses/30/lessons/12953 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 최대공약수, 최소공배수 로직을 알고 있으면 금방 풀 수 있는 문제이다. 두개의 수로 차례대로 최소공배수를 구해나가면 마지막 수가 n개 수의 최소공배수가 된다. import java.util.*; class Solution { public int solution(int[] arr) { int answer = arr[0]; for(int i=1; i If문 vs Switch문 💡문득 if문과 switch문의 차이가 궁금해져서 찾아보았다. If문 (branch statement 기반) if문은 조건이 만족하면 실행, 만족하지 않으면 무시한다. 조건이 만족하지 않으면 조건이 만족하거나 else if 문을 종료할 때까지 다음 조건문을 계속 확인한다. 따져야하는 조건이 많을수록 연산량이 늘어난다. if문을 작성할 때, 자주 사용하는 기능 순서대로 조건문을 작성하는 것이 성능 향상에 도움이 된다. 장점 : 점프테이블을 만드는 오버헤드가 없다. 단점 : if 혹은 else if를 만날 때마다 조건을 확인하기 위한 instruction이 계속해서 필요된다. -> 따져야 할 조건 수가 적을 경우 if-else를 쓰는 것이 유리하다. Switch-case 문 (jump statement 기반.. [BOJ] 12100번 : 2048(Easy) (JAVA) https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 1. 상,하,좌,우 이동에 따른 map을 계속 저장하며 dfs를 수행한다. 2. 이동횟수 5번이 되면 return 3. 최종적으로 MAX 값을 출력한다. move method는 이 방식으로 동작한다. import java.util.*; import java.io.*; public class Main { static int N; static int map[][]; sta.. [SWEA] 1949. 등산로 조성 (JAVA) https://swexpertacademy.com/main/solvingProblem/solvingProblem.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 등산로는 가장 높은 봉우리에서 시작해야하므로 지도를 입력하면서 가장 높은 봉우리를 구한다. 2. 가로 또는 세로 방향으로 연결 되어야 하므로 사방탐색을 한다. 높이가 낮은쪽으로만 이동할 수 있다. 3. 딱 한 곳을 정해서 최대 K 만큼 깎을 수 있다. -> 여기서 생각을 많이 했는데, 최대 K 만큼 깎을 수 있으므로 이동할 봉우리에서 K만큼 뺐을 때 현재 봉우리보다 작으면 이동이 가능하며, 이동할 봉우리를 현재 봉우리보다 1만큼 작은 수가 되.. [알고리즘] 이분탐색 int BinarySearch(int arr[], int target) { int left = 0; int right = arr.length-1; int mid; while(left target) right = mid-1; else left = mid+1; } return -1; } 1. 내가 찾아야 할 범위를 left ~ right 로 설정한다. 2. 정답을 mid로 간주하고 유효한지 확인한다. 3. 2를 따지며 left, right를 줄여나간다. (right = mid-1, left = mid+1) 4. left > right가 되면 종료한다. 이전 1 2 3 4 5 6 ··· 14 다음 목록 더보기