항해99 (44) 썸네일형 리스트형 프로그래머스 Lv1 서울에서 김서방 찾기 import java.util.Arrays; class Solution { public String solution(String[] seoul) { String answer = ""; int index = Arrays.asList(seoul).indexOf("Kim"); answer = "김서방은 " + index + "에 있다"; return answer; } } int index = Arrays.asList(seoul).indexOf("Kim"); int index 문제에서 필요로하는 data Type은 배열에서 "kim"의 위치를 index한 int 값이기 때문에 int type Data 안에서 위치를 index해 담아줄 객체를 선언한다. Arrays.asList(seoul).indexOf("Kim.. 프로그래머스Lv1 문자열 다루기 기본 class Solution { public boolean solution(String s) { return (s.length() == 4 || s.length() == 6) && (s.split("[0-9]").length 프로그래머스Lv1 문자열 내 p와 y의 개수 class Solution { boolean solution(String s) { s = s.toUpperCase(); return s.chars().filter( e -> 'P'== e).count() == s.chars().filter( e -> 'Y'== e).count(); } } 내가 직접 작성한 코드가 아닌 정리하면 제일 공부가 많이될법한 답안을 문제의 정답에서 가져왔다. s = s.toUpperCase(); toUpperCase() : 영어 대소문자가 섞인 String Type Data를 모두 대문자로 변환 toLowerCase() : 영어 대소문자가 섞인 String Type Data를 모두 소문자로 변환 문제에서는 대소문자를 구별하지않고 같은지만 비교하기 때문에 모두 대문자로 바꿔주었다... 항해 99 9일차 (알고리즘 모의고사) = 문제 = 항해 시작일을 입력하면 항해99 수료일을 n월n일 형식으로 리턴하는 메서드를 만드세요 import java.time.LocalDate; import java.time.format.DateTimeFormatter; public class Main { public static void main(String[] args) { Main method = new Main(); System.out.println(method.solution(1, 18)); } public String solution(int day, int month) { String answer = ""; //Local Date today로 2022년 month월 day일의 객체를 생성 LocalDate today = LocalDate... 프로그래머스Lv1 나누어 떨어지는 숫자 배열 class Solution { public int[] solution(int[] arr, int divisor) { int[] arr1 = Arrays.stream(arr).filter(parameterArr -> parameterArr % divisor == 0).toArray(); arr1 = Arrays.stream(arr1).sorted().toArray(); if (arr1.length ==0) arr1 = new int[]{-1}; return arr1; } } 지금껏 풀어왔던 배열 문제들과 유사한 문제지만 매번 똑같은 방식으로 풀기보다 새로운 개념을 배우며 풀어보면 좋을 것 같아 Arrays.stream을 사용해서 풀어봤다. - Arrays.stream(arr) - 스트림은 데이터의 흐름이다.. 프로그래머스 Lv1 문자열을 정수로 바꾸기 class Solution { public int solution(String s) { int answer = Integer.parseInt(s); return answer; } } int type answer에 Integer.parseInt(s)로 Integer Type으로 형변환한 s를 할당해주기만 하면 되는 간단한 문제였다. 사실 Integer.parseInt를 하게되면 객체가 String type일 때의 부호까지 유지한채 변환하는지는 모르고 그냥 형변환 후에 한번 test해봤더니 해결됐다.. - Integer.parseInt() - Integer.parseInt(변환할 객체)를 할당해주게 되면 ()안의 객체를 integerType로 변환해준다. 기본 값은 10진수로 객체를 변환해 return해주며.. 항해 99 8일차 (알고리즘) 항해 2주차의 시작이다. 항해 2주차의 시작은 일주일동안 집에 박혀있었으나 감염돼버린 코로나와 함께 깔끔하게 시작했다. -4일차- 28문제 中 28 Clear = Challenge 도전중 = 12문제 中 2 Clear 문제에 수학적 개념이 등장해서 덜컥 겁부터 먹었다. 자바로 문제해결 하는 것도 어려운데 수학적으로 계산까지 해가면서 풀어야하다니... 하는 생각을 했지만 생각보다 많이 간단한 문제였다. class를 통해 제곱근을 구해준 후 차근차근 단계만 밟아가면 되는 문제라큰 어려움이 없었던 것 같다. 이 문제가 유독 기억에 남는 이유는 후에 하샤드 수 , 콜라츠 추측 등의 문제를 마주했을 때 겁먹지 않고 풀어나갈 수 있게끔 해준 문제인 것 같다. 문제를 찬찬히 읽어보고 과정들을 하나 하나 주석으로 적은.. 항해 99 7일차 -1주차- 회고 항해99의 1주 차가 끝났다. 정신없던 미니 프로젝트로 시작해 숨막히는 알고리즘으로끝난 1주 차의 회고 주제는 JWT와 API를 정리하는 것으로 주어졌다. 미니프로젝를 하며 내가 JWT를 이해하고 활용했던 부분과 API를 이해하고 설계했던 내용으로 정리를 해보면 좋을 것 같다. 1.Json Wen Tokens jwt는 " . "을 통해 3파트로 header.payload.signature 순으로 구분된다. Header : 토큰의 타입과 해시 암호화 알고리즘으로 구성되어있다. Payload : 토큰이 갖는 데이터를 말한다 (key : value 형태) Signauture : Header에 정의된 암호화 알고리즘을 통하여 암호화된 비밀 값 Secret Key값을 포함하여 암호화됨 1. hash 암호화 알고.. 이전 1 2 3 4 5 6 다음