분류 전체보기(38)
-
[Programmers] Lv0 겹치는 선분의 길이 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120876?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 lines의 최소 최대 범위 만큼 배열을 만들고 그 배열에 각각 기록을 하면 겹치는 부분을 쉽게 구할 수 있다. 겹치는 부분은 2번 이상 기록된 거이므로 2번 이상 된것을 세면 된다. 소스 코드 import java.util.Arrays; public class Solution { public int solution..
2023.01.26 -
[Programmers] Lv0 평행 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120875 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 평행하다고 하는 것은 기울기가 갔다 와 의미가 같다. 기울기를 구하는 공식은 (y2 - y1) / (x2 - x1)이다. 평행을 하는 경우의 수를 구하고 그 경우의 수 끼리 서로 같은지 구분하여 풀었다. 소스 코드 public class Solution { public double getGrade(int[] dot1, int[] dot2) ..
2023.01.25 -
[Programmers] Lv0 n의 배수 고르기 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 문제는 numlist에서 n의 배수만 걸러내는 것이다. 거의 모든 프로그래밍 언어는 나머지 연산자를 제공해 준다. n의 배수라는 말은 어떤 수가 n으로 나누어 떨어지는 수라고 할 수 있다. 이를 자바로 표현하면 다음과 같다. if ( num % n == 0) { // n의 배수일때 실행되는 코드 } 이를 배열로 구현한다면 배열을 여러 번 생..
2023.01.24 -
[Programmers] Lv0 자릿수 더하기 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 해당 숫자를 각 자리마다 더하는 것이므로 문자열로 변환하면 각 자릿수에 접근을 할 수 있다. 이때 접근은 char로 가능하며 char을 int 다시 말해 char 에 해당하는 의미의 숫자로 바꾸려면 Character.getNumericValue(char)를 사용하거나 ASCII 코드를 이용하여 char - ‘0’ 이렇게 해주면 된다. 소스 ..
2023.01.23 -
[Programmers] Lv0 OX 퀴즈 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120907 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 이 문제는 형식이 고정된 식에 대해 결과가 맞는지 확인 하는 문제이다. 연산 기호 숫자 사이에는 하나이상의 공백이 있으며 또한 연산이 2번이 되지 않고 1번만 된다. 또한 연산자의 수는 2개 -, + 이다. 자바에서 array.split(구분자)를 쓰면 구분자를 기준으로 배열을 만들어 준다. 이를 이용하면 연산자를 구분할 수 있으며(연산자의..
2023.01.23 -
[Programmers] Lv0 문자열안에 문자열 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120908 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 Str1에 Str2가 있는지 확인하는 문제이므로 문자열 검색 알고리즘을 사용하면 된다. 보이어 무어법을 공부하고자 보이어 무어법으로 풀었다. 보이어 무어법의 시간 복잡도는 브루트 포스법과 KMP법 보다 알고리즘 시간이 더 빠르다. n = 택스트 길이, m 은 패턴의 길이일때 최악의 경우 O(n)이고 평균 O(n / m)이다. 보이어 무어법으..
2023.01.22 -
서비스 호스트: Device Association Service 점유율 문제 해결법
이슈 서비스 호스트: Device Association Service의 CPU및 메모리가 과반 이상의 점유율을 가졌다. 이문제를 해결하고자 인터넷에 검색한 결과 불필요한 여러 하드웨어 장치를 실행하거나 연결되어 있다고 말한다. 이 이슈에 관한 것은 아래 링크에 타고 가면된다. https://answers.microsoft.com/ko-kr/windows/forum/all/%EB%A9%94%EB%AA%A8%EB%A6%AC%EC%99%80-cpu/fd7de4eb-f3f2-475a-9e00-33eea7313613 리디렉션 중 login.microsoftonline.com 해결법 1. 윈도우 설정에 Blutooth 및 장치 > 장치에서 필요없는 장치를 제거 해보자. - 장치 관리자에서 제거할시 삭제하면 안될 수..
2023.01.22 -
[Programmers] Lv0 제곱수 판별하기 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 자바에선 루트를 Math.sqrt(number)로 제공해준다. 또한 자바에선 나머지 연산자 %를 사용할 수 있기 떄문에 n을 루트로 나눈 것에 나머지가 0이면 즉 나누어 떨어지면 제곱수라고 반환하면 된다. 소스 코드 public class Solution { public int solution(int n) { return n % Math.s..
2023.01.21 -
[Programmers] Lv0 세균 증식 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120910 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 처음 세균 n마리가 있을 떄 t 시간 경과후 세균의 수는 총 n * 2^t 이다. 자바에서는 Math.pow(num, 제곱수)를 이용하여 제곱을 구할 수 있다. 이때 반환되는 타입은 double이기 때문에 형변환을 통해 int로 변환 시켜 줘야 된다. 소스 코드 class Solution { public int solution(int n, ..
2023.01.20 -
[Programmers] Lv0 문자열 정리하기(2) JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 먼저 정렬을 하기 전에 먼저 my_string을 소문자로 변경해준다. 소문자로 변경을 해주는 이유는 sort로 정렬을 할시 대문자가 소문자 보다 앞으로 오기 때문이다. Bcad로 예를 들면 Bacd로 정렬이 되기 때문에 소문자로 먼저 변경을 해줘야 한다. 위의 이유는 아스키 코드로 정렬할시 A는 65이고 a는 97이기 때문에 (이는 char..
2023.01.20