항해99

안녕하세요. delay100 입니다!미들러 문제1번. 치킨배달  https://www.acmicpc.net/problem/15686 1-1. 실패코드 - 시간초과package club99;import java.io.*;import java.util.*;public class p15686 { static int N, M, chickenIdxLength; static int[] chickenIdx, selectedChickenIdx, homeListIdx; static boolean[] visitedChickenIdx; static int[][] list; static boolean[][] isVisited; static int min = Integer.MAX_VALUE; public static void ..
안녕하세요. delay100 입니다!미들러 문제1번. 플러그 https://www.acmicpc.net/problem/2010콘센트 1개마다 꽂을 수 있는 콘센트 가능 수가 1개씩 줄어듭니다.따라서 매 콘센트마다 -1을 해주고, 마지막 콘센트는 컴퓨터를 연결하면 되므로 다시 +1을 해주면됩니다.import java.io.*;public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWrite..
안녕하세요. delay100 입니다!미들러 문제1번. 동물원 https://www.acmicpc.net/problem/1309dp로 풀어줍니다. 2차원 배열을 사용했습니다.list[i][0] = 아무곳에도 사자를 넣지 않는 경우의 수list[i][1] = 왼쪽에만 사자를 넣은 경우의 수list[i][2] = 오른쪽에만 사자를 넣은 경우의 수각각 i번째에 각각 경우의 수를 갱신해줍니다.배열의 내부 값이 매우 커지기 때문에 연산 시 %9901을 계속 해주었습니다.import java.io.*;public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(ne..
안녕하세요. delay100 입니다!미들러 문제1번. 타일 채우기 4 https://www.acmicpc.net/problem/15700타일 하나당 바닥의 크기를 반으로 나누면, 타일이 차지하는 격자의 수를 계산할 수 있습니다. 이때 바닥의 크기는 a * b 이므로, (a * b) / 2 가 타일을 놓을 때 필요한 격자의 수입니다. 만약 직사각형 바닥면에 21 크기의 타일을 가로로 놓는다고 가정하면, 타일이 놓이는 위치에 따라서 가로로 놓인 타일은 항상 두 개의 격자에 걸치게 됩니다. 그리고 세로로 놓일 때에도 마찬가지로, 타일 하나당 바닥면의 크기를 나눈 것의 반만큼이 격자에 걸치게 됩니다. 이를 통해 (ab)/2 공식이 나오게 됩니다.import java.io.*;import java.util.*;p..
안녕하세요. delay100 입니다!오늘도 세션 내에 문제를 다 풀지 못했습니다... ㅠㅠ 11시 41분에 겨우 마쳤네요..미들러 문제1번. n^2 배열 자르기https://school.programmers.co.kr/learn/courses/30/lessons/87390 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 1. 실패코드 - 실패 & 시간초과 & 런타임에러 2중 for문을 이용한 풀이입니다. 실패코드이니 따라하지는 마세요사실 풀면서도 시간복잡도 관련 문제가 발생할 것이라 예상은 됐지만.. 그래도 풀이한 방법을 적어두겠습니다. 풀이 방법은 n번만큼 ..
안녕하세요. delay100 입니다!미들러 문제1번. 나이 계산하기  https://www.acmicpc.net/problem/16199만, 세, 연나이를 구하는 문제입니다. 1. 만 나이 = (기준일을 숫자로 변환 - 생일을 숫자로 변환) / 1년 일 수1~12월까지 매달 31일까지 있다고 가정했습니다. (문제에서 주어진 값이 없기 때문에 가능)1달 = 31일1년 = 12개월 * 1달(31일) = 372일 예를들어,생일이 2023년 4월 5일이면 년도를 일로 변환 시년) 2023*12(개월)*31(1달) = 752,556일월) 4*31(1달) = 124일일) 5일생일 총합 = 752,685일 기준일이 2024년 4월 5일이면  년도를 일로 변환 시년) 2024*12(개월)*31(1달)  = 752,92..
안녕하세요. delay100 입니다!미들러 문제1번. 연속 부분 수열 합의 개수https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr이 문제를 해결하기 위해서는 아래의 문장을 떠올려야합니다..(필자도 생각하지 못했음)elements[(i + j) % elements.length]i + j 값을 배열 길이의 값으로 나눈 나머지를 index로 사용해 elements 배열 값을 구합니다.구한 elements 배열 값을 sum에 추가하여 부분합을 구해줍니다.위..
안녕하세요. delay100 입니다!미들러 문제1번. N개의 최소공배수https://school.programmers.co.kr/learn/courses/30/lessons/12953 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr이 문제는 유클리드 호제법을 사용하면 됩니다.그러나 필자는 유클리드 호제법에 대해 말만 들어봤지 실제로는 잘 몰랐습니다.그래서 유클리드 호제법을 먼저 검색해보았고, 최대 공약수(+ 최소공배수)를 구해야하는 문제에서 쓰는 방식인 것을 알게 되었습니다.유클리드 호제법은 최대 공약수를 구할때 쓰는데, 이렇게 구한 최대 공약수로 최소공배수까..
안녕하세요. delay100 입니다. 미들러 문제. RGB 거리 https://www.acmicpc.net/problem/1149저번 수요일 모의고사때 다이나믹 프로그래밍(dp) 문제를 접했었습니다. 이 문제도 유사하게 규칙을 찾을 수 있었습니다.**유사한 문제 -> https://www.acmicpc.net/problem/9465아무튼 그때 멘토님이 dp를 풀기 위해서는 제일 작은 테스트케이스를 생각해보고 규칙을 찾을 수 있는지 파악하라고 말씀을 해주셨습니다.그래서 이번 문제를 봤을 때 dp인가..? 싶었고 규칙을 생각해보니 쉽게 찾을 수 있었습니다. R을 list[i][0], G를 list[i][1], B를 list[i][2]로 생각해서 문제를 해결했습니다.맨 윗줄을 제외하고, 다음줄부터 위와 같이 ..
안녕하세요. delay100 입니다. 미들러 문제. 진짜 공간 https://www.acmicpc.net/problem/1350import java.io.*;import java.util.*;public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int N = Integer.parseInt(br.readLine()); StringTokenize..
delay100
'항해99' 카테고리의 글 목록 (4 Page)