본문 바로가기

java

공원 산책 문제 설명 지나다니는 길을 'O', 장애물을 'X'로 나타낸 직사각형 격자 모양의 공원에서 로봇 강아지가 산책을 하려합니다. 산책은 로봇 강아지에 미리 입력된 명령에 따라 진행하며, 명령은 다음과 같은 형식으로 주어집니다. ["방향 거리", "방향 거리" … ] 예를 들어 "E 5"는 로봇 강아지가 현재 위치에서 동쪽으로 5칸 이동했다는 의미입니다. 로봇 강아지는 명령을 수행하기 전에 다음 두 가지를 먼저 확인합니다. 주어진 방향으로 이동할 때 공원을 벗어나는지 확인합니다. 주어진 방향으로 이동 중 장애물을 만나는지 확인합니다. 위 두 가지중 어느 하나라도 해당된다면, 로봇 강아지는 해당 명령을 무시하고 다음 명령을 수행합니다. 공원의 가로 길이가 W, 세로 길이가 H라고 할 때, 공원의 좌측 상단의 좌.. 더보기
개인정보 수집 유효기간 문제 설명 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다. 당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다. 모든 달은 28일까지 있다고 가정합니다. 다음은 오늘 날짜가 2022.05.19일 .. 더보기
[기초 정렬 문제] Java 백준 알고리즘 문제-2750 import java.util.Scanner; public class AlgoChap05 { /* * 기초 정렬 문제 풀이 * 백준 알고리즘 2750 */ public static void main(String[] args) { Scanner sc = new Scanner(System.in); int array[] = new int[1001]; int min, index = 0, temp; int number = sc.nextInt(); for(int i = 0; i < number; i ++) { array[i] = sc.nextInt(); } for(int i = 0; i < number; i ++) { min = 1001; for(int j = i; j < number; j ++) { if(min .. 더보기
[삽입 정렬] Java 삽입 정렬 public class Algo03 { public static void main(String[] args) { /* * 삽입정렬 * 1 10 5 8 7 6 4 3 2 9 * 각 숫자를 적절한 위치에 삽입하는 방법 * 필요할떄만 위치를 바꾸게 된다. * O(N^2)중에 가장 좋다. * 1 -> 1 10 5 8 7 6 4 3 2 9 * -> 1 5 10 8 7 6 4 3 2 9 * -> 1 5 8 10 7 6 4 3 2 9 * -> 1 5 7 8 10 6 4 3 2 9 * 기본적으로 정렬이 되어있다 가정하면 속도가 빠르다. */ int j,temp;// 값를 바꾸기위한 변수 선언 int arr[] = {1,10,5,8,7,6,4,3,2,9}; for(int i = 0; i< arr.length - 1; i.. 더보기
[버블 정렬] Java 버블 정렬 public class Algo02 { /* * 버블정렬 * 옆에 있는 값과 비교해서 더 작은 값을 앞으로 보내면 * 효율성이 가장 떨어지는 알고리즘 * 1 10 5 8 7 6 4 3 2 9 * 1-> 9번째까지 1 10 5 8 7 6 4 3 2 9 * 2-> 8번째까지 1 5 10 8 7 6 4 3 2 9 * 3-> 1 5 8 10 7 6 4 3 2 9 * ... * 가장 큰 값이 맨 끝으로 */ public static void main(String[] args) { int temp; int arr[] = {1,10,5,8,7,6,4,3,2,9}; for(int i =0 ; i a.. 더보기
[선택 정렬] Java 선택 정렬 public class Algo01 { /* 선택 정렬 * 오름차순으로 정렬 * 가장 작은것을 선택해서 제일 앞으로 보내기 * 1 10 5 8 7 6 4 3 2 9 * 1 -> 1 10 5 8 7 6 4 3 2 9 * 2 -> 1 2 5 8 7 6 4 3 10 9 * 3 -> 1 2 3 8 7 6 4 5 10 9 * 4 -> 1 2 3 4 7 6 8 5 10 9 * .... * */ public static void main(String[] args) { int index = 0;// 가장 작은 원소가 위치하는 인덱스 int temp = 0;// 특정한 두 숫자를 바꾸기 위해 사용 int arr[] = {1,10,5,8,7,6,4,3,2,9}; for(int i = 0; i < arr.length; i .. 더보기
[Zoom API 연동 ] Zoom Server-to-Server OAuth 연동 Zoom API는 JSON 웹 토큰(JWT)을 사용하였는데 JWT 앱 유형은 더 이상 사용되지 않습니다. 서버 간 OAuth앱 또는 OAuth앱을 생성하여 계정에서 JWT앱의 기능을 대체하는 것이 좋습니다. 기존에는 JWT 값을 DB에 저장해서 조회한 다음에 API를 돌렸던 구조라면 sts oauth 는 전달한 id, secret 값으로 엑세스 토큰값을 조회한 다음 그걸로 API를 사용 1. Postman을 통해 API 테스트 POST https://zoom.us/oauth/token?grant_type=account_credentials&account_id= {accountId} HTTP/1.1 Host: zoom.us Authorization: Basic Base64Encoder(clientId:cl.. 더보기
[JSP] AdminLTE 라이브러리 활용한 멀티셀렉박스 적용 AdminLTE 라이브러리 활용한 멀티셀렉박스 적용 주요 포인트 : select2" multiple="multiple" 를 사용하여 멀티 셀렉터 사용 / 스크립트에 $('.select2').select2(); 추가해야함 adminLTE의 css, js 사용함 [class 파일에서] - 멀티셀렉트에서 여러 데이터 검색하면 스트링 배열 형태로 데이터가 넘어옴 하지만 단일 검색이면 스트링형태로 넘어옴 뒤에서 데이터를 배열로 받아야 하기 때문에 String[] sLangCdList = request.getParameterValues("S_LANG_CD"); 형태로 스트링배열로 받는다. 처음에 commandMap.get();으로 받았는데 단일 검색일 경우 배열 형태로 넘어오지 않아서 별도 작업이 필요했다. if(.. 더보기