목록java (47)
우당탕탕 개발일지
문제 1. 숫자 1부터 순서대로 차례대로 말하되, “3” “6” “9” 가 들어가 있는 수는 말하지 않는다.2. "3" "6" "9"가 들어가 있는 수를 말하지 않는대신, 박수를 친다. 이 때, 박수는 해당 숫자가 들어간 개수만큼 쳐야 한다. 예를 들어 숫자 35의 경우 박수 한 번, 숫자 36의 경우 박수를 두번 쳐야 한다. 입력으로 정수 N 이 주어졌을 때, 1~N 까지의 숫자를 게임 규칙에 맞게 출력하는 프로그램을 작성하라.박수를 치는 부분은 숫자 대신, 박수 횟수에 맞게 “-“ 를 출력한다.여기서 주의해야 할 것은 박수 한 번 칠 때는 - 이며, 박수를 두 번 칠 때는 - - 가 아닌 -- 이다. 입출력 예 풀이1부터 확인하면서 n까지 숫자인지 박수인지 확인한다. 1. 하나의 숫자에 박수 ..
문제다음과 같은 조건 하에서 사재기를 하여 최대한의 이득 구하기 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망에 걸리지 않기 위해 하루에 최대 1만큼 구입할 수 있다. 3. 판매는 얼마든지 할 수 있다.예를 들어 3일 동안의 매매가가 1, 2, 3 이라면 처음 두 날에 원료를 구매하여 마지막 날에 팔면 3의 이익을 얻을 수 있다. 입출력 예 풀이해당 문제는 주어진 판매가 배열의 마지막 원소에서부터 풀면 된다. 구매한 가격보다 판매가가 최고로 큰 경우에만 팔아야 하기 때문이다. 따라서 아래와 같은 방식으로 움직인다. 1. 마지막 원소를 가장 큰 수라고 가정한다. 2. 마지막 원소와 하나 앞의 원소의 크기를 비교 한다. 2-1. 마지막 ..
1. 회원 목록 1-1. MemberController.java 1. 회원목록 구하여 memberDTOList에 저장 >> memberService의 findAll 함수 호출 2. memberDTOList를 model에 담아 클라이언트에 전송 3. listMember.html 불러냄 @GetMapping public String findAll(Model model) { List memberDTOList = memberService.findAll(); // view에 가져갈 데이터를 model에 담아서 사용 model.addAttribute("memberList", memberDTOList); return "listMember"; } 1-2. MemberService.java findAll 함수 1. me..
기존에 만들었던 게시판 프로젝트를 회원제 게시판으로 기능을 추가하려고 한다. 기존에 있는 index.html 파일에 회원가입 관련된 메뉴를 넣고 회원가입 화면으로 이동까지 구현하였다. 1. index.html 기존 index.html 파일에 a태그 3개 추가하였다. 1-1. 결과 화면 index 화면이다. 2. saveMember.html 회원가입 화면 html 파일이다. form 태그에 3가지 요소 (이메일, 아이디, 비밀번호)가 감싸져있다. form 태그에 감싸져있기에 마지막 input 태그인 회원가입 버튼을 클릭하였을 때, 3가지 요소가 서버에게 넘어간다. form 태그의 action 속성에 의해서 해당 주소에 ( member/save ) post 방식으로 서버에게 데이터가 넘어간다. post 방식..
문제 작업이 요청되는 시점과 소요시간을 담은 2차원 배열이 주어진다. 작업의 요청부터 종료까지 걸린 시간의 평균에 대한 최소값을 구하는 Soluntion 함수 구현 (소수점 이하의 수는 버림) 입출력의 예 풀이 요청시간과 소요시간이 주어진다. 종료까지의 최솟값을 구하기때문에 빨리끝나는것부터 진행하면 된다구 생각했다. 나는 요청시간+소요시간의 값이 가장 작은것부터 진행을 하고 만약 같을 경우, 요청시간이 더 짧은 것을 우선으로 진행한다! 라고 생각했다. 그런 생각은 했지만 구현하는 것은 어려워 여러 블로그을 참고하였다. 내 생각과 원리는 비슷했으나 요청과 소요시간에 대해서 각자 오름차순으로 정렬을 해야 했다. 해당 방식으로 구현하는 것이 더 간단하고 예외상황에 대한 처리가 없을 것 같다는 생각이 들었다. ..
문제 어피치가 연속적으로 나열되어 있는 모든 종류의 보석을 쇼핑한다. 가장 적은 개수를 선택할 수 있는 부분을 인덱스로 구해라 입출력 예 풀이 너무 어렵다... 다른 방법으로도 풀어볼려고 한다 다양한 블로그를 참고하여 문제를 풀었다..! [ 변수 설명 ] gemCountMap : 어피치가 선택한 보석 종류 및 개수 selectedGemsQueue : 어피치가 선택한 보석 List gemSet : 포함하여야 하는 모든 보석의 종류 start : 리스트 시작 번호 size : 리스트의 개수 >> gems의 길이로 설정한 이유는 보석 리스트의 크기와 비교하기 위해서 큰 값이 필요함 result : 최종 리스트의 시작 번호 [ 반복문 ] 반복문을 통해 gems 배열의 원소를 하나씩 비교한다. 반복문 안의 로직을..
문제 각 팀별로 한명씩 나와서 숫자가 더 큰 쪽이 승리하는 게임 A팀은 출전 순서를 정해였고 B팀은 그 순서를 알고 있다. 이때 B팀이 얻을 수 있는 최고점은 몇점입니까? 입출력 예 풀이 A와 B 배열 모두 오름차순 정렬하였다 B의 최고점을 구하기 때문에 B가 더 클 경우에만 A, B 배열 모두 다음 인덱스를 비교하도록 하였다. 또한 B가 승리하였기에 결과 값에 1를 더하였다. B가 A보다 작거나 같을 경우네는 B 배열만 다음 인덱스를 비교하도록 하였다. A보다 B가 더 큰 경우가 많을 경우을 찾기 때문이다. B의 다음 인덱스 값과 A는 이전과 동일한 인덱스 값으로 비교한다. 해당 과정은 배열의 길이만큼 진행한다. 출전의 횟수는 각 팀의 인원수 만큼이기 때문이다. 최종 코드 public int s4(in..