본문 바로가기

java

(77)
[프로그래머스/Java] 개인정보 수집 유효기간 📚 개인정보 수집 유효기간 [JAVA] 프로그래머스 Level 1. 코딩테스트 연습 - 개인정보 수집 유효기간 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, ..
[프로그래머스/Java] 둘만의 암호 📚 둘만의 암호 [JAVA] 프로그래머스 Level 1. 코딩테스트 연습 - 둘만의 암호 | 프로그래머스 스쿨 (programmers.co.kr) 문제 두 문자열 s와 skip, 그리고 자연수 index가 주어질 때, 다음 규칙에 따라 문자열을 만들려 합니다. 암호의 규칙은 다음과 같습니다. 문자열 s의 각 알파벳을 index만큼 뒤의 알파벳으로 바꿔줍니다. index만큼의 뒤의 알파벳이 z를 넘어갈 경우 다시 a로 돌아갑니다. skip에 있는 알파벳은 제외하고 건너뜁니다. 예를 들어 s = "aukks", skip = "wbqd", index = 5일 때, a에서 5만큼 뒤에 있는 알파벳은 f지만 [b, c, d, e, f]에서 'b'와 'd'는 skip에 포함되므로 세지 않습니다. 따라서 'b', '..
[프로그래머스/Java] 카드 뭉치 📚 카드 뭉치 [JAVA] 프로그래머스 Level 1. 코딩테스트 연습 - 카드 뭉치 | 프로그래머스 스쿨 (programmers.co.kr) 문제 코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았습니다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶습니다. 원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다. 한 번 사용한 카드는 다시 사용할 수 없습니다. 카드를 사용하지 않고 다음 카드로 넘어갈 수 없습니다. 기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없습니다. 예를 들어 첫 번째 카드 뭉치에 순서대로 ["i", "drink", "water"], 두 번째 카드 뭉치에 순서대로 ["want", "to"]가 적혀있을 때 ["..
Intellij 네이버 Java 코딩 컨벤션 및 Checkstyle 적용 1. 코딩 컨벤션이란 코딩 컨벤션은 개발자들이 코드를 작성하고 구성하는 데 사용하는 규칙과 가이드라인의 모음입니다. 이는 코드의 가독성, 일관성, 유지 보수성, 협업 등을 향상시키기 위해 사용됩니다. 즉, 코딩 컨벤션은 일관된 스타일과 구조를 갖춘 코드를 작성하도록 지침을 제공하는 것입니다. 이점 가독성 향상: 일관된 코드 스타일은 코드를 읽고 이해하기 쉽게 만들어 줍니다. 유지 보수성 개선: 일관된 코드 구조와 명명 규칙은 코드의 유지 보수를 용이하게 만들어 줍니다. 버그 감소: 일관된 코딩 스타일은 실수를 줄일 수 있고 버그를 예방할 수 있습니다. 협업 용이성: 동일한 코딩 컨벤션을 공유하면 여러 개발자가 동일한 스타일로 작업하여 협업이 원활해집니다. Java에서는 구글, 네이버에서 지정한 코딩 컨벤..
Mock Test 중 발생한 오류 Mockito 프레임워크를 이용하여 단위 테스트를 하면서 개발자의 실수로 인하여 생기는 문제 예제 코드 1. Mock 객체 설정 @ExtendWith(MockitoExtension.class) public class MemberControllerTest { private final static String userId = "userId"; private final static String name = "홍길동"; @InjectMocks private MemberController memberController; @Mock private MemberService memberService; private MockMvc mockMvc; private Gson gson; @BeforeEach public voi..
[프로그래머스/Java] 대충 만든 자판 📚 대충 만든 자판 [JAVA] 프로그래머스 Level 1. 코딩테스트 연습 - 대충 만든 자판 | 프로그래머스 스쿨 (programmers.co.kr) 문제 휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다. 예를 들어, 1번 키에 "A", "B", "C" 순서대로 문자가 할당되어 있다면 1번 키를 한 번 누르면 "A", 두 번 누르면 "B", 세 번 누르면 "C"가 되는 식입니다. 같은 규칙을 적용해 아무렇게나 만든 휴대폰 자판이 있습니다. 이 휴대폰 자판은 키의 개수가 1개부터 최대 100개까지 있을 수 있으며, 특정 키를 눌렀을 때 입력되는 문자..
[프로그래머스/Java] 덧칠하기 📚 [1 주차] 덧칠하기 [JAVA] 프로그래머스 Level 1. https://school.programmers.co.kr/learn/courses/30/lessons/161989 문제 어느 학교에 페인트가 칠해진 길이가 n미터인 벽이 있습니다. 벽에 동아리 · 학회 홍보나 회사 채용 공고 포스터 등을 게시하기 위해 테이프로 붙였다가 철거할 때 떼는 일이 많고 그 과정에서 페인트가 벗겨지곤 합니다. 페인트가 벗겨진 벽이 보기 흉해져 학교는 벽에 페인트를 덧칠하기로 했습니다. 넓은 벽 전체에 페인트를 새로 칠하는 대신, 구역을 나누어 일부만 페인트를 새로 칠 함으로써 예산을 아끼려 합니다. 이를 위해 벽을 1미터 길이의 구역 n개로 나누고, 각 구역에 왼쪽부터 순서대로 1번부터 n번까지 번호를 붙였습니다..
[프로그래머스/Java] 바탕화면 정리 📚 [1 주차] 바탕화면 정리 [JAVA] 프로그래머스 Level 1. https://school.programmers.co.kr/learn/courses/30/lessons/161990 문제 코딩테스트를 준비하는 머쓱이는 프로그래머스에서 문제를 풀고 나중에 다시 코드를 보면서 공부하려고 작성한 코드를 컴퓨터 바탕화면에 아무 위치에나 저장해 둡니다. 저장한 코드가 많아지면서 머쓱이는 본인의 컴퓨터 바탕화면이 너무 지저분하다고 생각했습니다. 프로그래머스에서 작성했던 코드는 그 문제에 가서 다시 볼 수 있기 때문에 저장해 둔 파일들을 전부 삭제하기로 했습니다. 컴퓨터 바탕화면은 각 칸이 정사각형인 격자판입니다. 이때 컴퓨터 바탕화면의 상태를 나타낸 문자열 배열 wallpaper가 주어집니다. 파일들은 바탕화..