| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 언더라이터
- 모바일
- 안드로이드
- 프로그래머스
- BFS
- 멀티스레드
- backjoon
- 금융IT
- 알고리즘
- dfs
- 조합
- dp
- 네트워크
- 너비탐색
- 데이터베이스
- 개발
- IT
- 자바
- Java
- CKLU
- 백준
- Android
- 현대오토에버 코딩테스트
- 재귀함수
- 백준 알고리즘
- 삼성SW테스트
- 다이나믹 프로그래밍
- 익명객체
- 삼성sw문제
- 익명클래스
- Today
- Total
목록Algorithm (50)
Limky 삽질블로그
BackJoon # 110502 - 붕어빵 판매하기 https://www.acmicpc.net/problem/11052 우선 DP를 적용해 보겠다. 만약 4개의 붕어빵을 파는 경우 각각 1개를 팔 경우, 2개를 팔 경우, 3개를 팔 경우, 4개를 팔 경우 최대 이익을 구해야한다. 판매 붕어빵 갯수 이익 1개 1원 2개 5원 3개 6원 4개 7원 위와 같이 붕어빵의 갯수에 따라 이익이 다를 경우, 만약 붕어빵을 4개 팔 경우 최대 이익이 얼마일 것인가?? 차근차근 생각해보자. 붕어빵 4개를 판매하는 경우는 총 몇가지 일까? 1개 3개 = 7원 2개 2개 = 10원 3개 1개 = 7원4개 0개 = 7원 총 3가지 방법이 있을 것이다. 하지만 2개2개를 파는 것이 가장 큰 이익을 취한다. 즉 답은 10원이 될..
Programmers Level_03 점프뛰기 (JumpCase) 효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는 (1칸, 1칸, 1칸, 1칸) (1칸, 2칸, 1칸) (1칸, 1칸, 2칸) (2칸, 1칸, 1칸) (2칸, 2칸) 의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다. 멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 출력하는 jumpCase 함수를 완성하세요. 예를 들어 4가 입력된다면, 5를 반환해 주면 됩니다. package Programmers_Level03; public class JumpCase { public static void main(String[] arg..
Programmers Level_02 시저암호(Caesar) 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다.A를 3만큼 밀면 D가 되고 z를 1만큼 밀면 a가 됩니다. 공백은 수정하지 않습니다.보낼 문자열 s와 얼마나 밀지 알려주는 n을 입력받아 암호문을 만드는 ceasar 함수를 완성해 보세요.-> “a B z”,4를 입력받았다면 “e F d”를 리턴합니다. package Programmers_Level03; public class Caesar { public static void main(String[] args) { // TODO Auto-generated method stub Caesar c = new Caesar(); System.ou..
Programmers Level_02 정수 내림차순으로 배치하기 reverseInt 메소드는 int형 n을 매개변수로 입력받습니다. n에 나타나는 숫자를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. n은 양의 정수입니다. package Programmers_Level02; import java.util.Arrays; public class ReverseInt { public static void main(String[] args) { // TODO Auto-generated method stub ReverseInt ri = new ReverseInt(); System.out.println(ri.reverseInt(118372)); ..
Programmers Level_02 행렬의 곱셈 (ProductMatrix) 행렬의 곱셈은, 곱하려는 두 행렬의 어떤 행과 열을 기준으로, 좌측의 행렬은 해당되는 행, 우측의 행렬은 해당되는 열을 순서대로 곱한 값을 더한 값이 들어갑니다. 행렬을 곱하기 위해선 좌측 행렬의 열의 개수와 우측 행렬의 행의 개수가 같아야 합니다. 곱할 수 있는 두 행렬 A,B가 주어질 때, 행렬을 곱한 값을 출력하는 productMatrix 함수를 완성해 보세요. package Programmers_Level02; class ProductMatrix { public static void main(String[] args) { ProductMatrix c = new ProductMatrix(); int[][] a = { { ..
Programmers Level_02 소수 찾기 (NumberOfPrime ) numberOfPrime 메소드는 정수 n을 매개변수로 입력받습니다.1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하도록 numberOfPrime 메소드를 만들어 보세요.소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.)10을 입력받았다면, 1부터 10 사이의 소수는 [2,3,5,7] 4개가 존재하므로 4를 반환 5를 입력받았다면, 1부터 5 사이의 소수는 [2,3,5] 3개가 존재하므로 3를 반환 package Programmers_Level02; public class NumOfPrime { public static void main(String[] args) { NumOfPrime..
Programmers Level_02 하샤드(Harshad) 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.Harshad함수는 양의 정수 n을 매개변수로 입력받습니다. 이 n이 하샤드수인지 아닌지 판단하는 함수를 완성하세요. 예를들어 n이 10, 12, 18이면 True를 리턴 11, 13이면 False를 리턴하면 됩니다. package Programmers_Level02; public class HarshadNumber { public static void main(String[] args) { HarshadNumber sn = new HarshadNumber(); Sy..
Programmers Level_02 2016년 2016년 1월 1일은 금요일입니다. 2016년 A월 B일은 무슨 요일일까요? 두 수 A,B를 입력받아 A월 B일이 무슨 요일인지 출력하는 getDayName 함수를 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각SUN,MON,TUE,WED,THU,FRI,SAT를 출력해주면 됩니다. 예를 들어 A=5, B=24가 입력된다면 5월 24일은 화요일이므로 TUE를 반환하면 됩니다. package Programmers_Level02; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public cl..