본문 바로가기

728x90
반응형

BackEnd

[java] 약수의 개수 구하는 알고리즘 알고리즘 문제 풀이 중 약수의 개수를 구하는 예제가 있었음. 예를 들어) 약수의 개수가 짝수인지 홀수인지 판별하여 값을 더하거나 빼시오. 제가 생각한 약수의 개수가 짝/홀수인지 판별하는 방법은 1. 숫자를 제곱근으로 나눈다.2. 제곱근이 실수가 아닌 정수로 딱 맞아 떨어지는지 판별한다. 여기서 제곱근이 정수로 딱 맞아 떨어지면 다시 제곱을 하면 원래의 수가 나타나기 때문에 약수의 개수가 홀수,아니라면 짝수가 나타난다고 판별했음. 예시1) 14 : 1, 2, 7, 14 → 약수 : 4개, 제곱근 : 3.xxx예시2) 16 : 1, 2, 4, 8, 16 → 약수 : 5개, 제곱근 : 4 ◎ 코드 구현 for(int i=시작 숫자; i※ 메소드 설명1. Math.sqrt() : double 형태, 제곱근을 나.. 더보기
[java] 배열을 문자열로 합치는 방법 문제를 풀이하던 도중 배열에서 특정 문자열을 찾는 예제가 나왔음. 문자열이라면 indexOf(), contains() 메소드를 사용할 수 있겠지만,배열은 해당 기능을 수행할 수 있는 특정 메소드가 없음. 따라서 두 가지 방법을 생각했음.1. 배열을 문자열로 변경 → 특정 문자 포함 여부 확인2. 배열을 List로 변경 → 특정 문자 포함 여부 확인 1번 방법으로 문제 풀이했으며, 이를 위해, 배열을 문자열로 변경하는 방법에 대해 알아보자! ◎ 배열 → 문자열1. String.join() 메소드 활용 → 배열을 특정 문자로 구분해 합친 문자열 반환함. → 첫 번째 인자 : 배열을 연결할 문자, 두 번째 인자 : 문자열로 합칠 배열String[] strArr = {"A", "B", "C", "D"};Stri.. 더보기
[java] 소인수 분해 코드 구현 방법 소인수분해 : 어떤 수를 소수들의 곱으로 표현하는 것 예시) 20 = 2 * 2 * 5 여기서, 소인수는 2, 5 ◎ 소인수의 표현 방법 구상1. 지정한 변수(n)를 1보다 클때까지 반복문 설정 → n을 소인수로 나눈 후 그 값을 n에 다시 저장할 것2. 소수는 2부터 시작하기 때문에 초기값 설정 → 소수 : 1과 자기자신만을 갖는 수3. n을 소인수로 나눈 후 n에 다시 저장하고 다시 2부터 시작해 소인수를 찾음while(n > 1){ int i = 2; while(true){ if(n % i == 0) { n /= i; break; } i++; }}​ 여기서 배열, 리스트, Set 등으로 저장하면 되고 중복되.. 더보기
[java] Set, HashSet 정렬(순서) 방법 문제 풀이를 하며 Set을 사용했을 때, 하나만 실패하였음.  ◎ 사용 예시Set set = new HashSet();set.add(i); 하나만 실패한 원인 → set은 순서가 없기 때문에 항상 add 한 순서대로 출력하지 않음 ◎  해결방법1. set -> list로 변경2. list의 정렬 방법인 Collections.sort() 메소드 사용List list = new ArrayList(set);Collections.sort(list);​ 중복을 제거하기 위해서 set을 사용했지만, 순서가 없기때문에 순서가 있는 list를 사용했음. 중복도 제거되면서 순서를 지정할 수 있는 LinkedHashSet을 사용하면 훨씬 더 효율적으로 코드 구성할 수 있을 것 같다. 더보기
[JAVA] 조건문, 반복문을 이용한 문제 풀이 11(은행) 목차 1. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 1(윤년 계산기) 2. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임) 3. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기) 4. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 4(청구 금액 계산기) 5. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 5(다독왕) 6. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, .. 더보기
[JAVA] 조건문, 반복문을 이용한 문제 풀이 10(만원의 행복) 목차 1. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 1(윤년 계산기) 2. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임) 3. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기) 4. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 4(청구 금액 계산기) 5. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 5(다독왕) 6. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, .. 더보기
[JAVA] 조건문, 반복문을 이용한 문제 풀이 9(숫자 맞추기 게임) 목차 1. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 1(윤년 계산기) 2. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임) 3. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기) 4. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 4(청구 금액 계산기) 5. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 5(다독왕) 6. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, .. 더보기
[JAVA] 조건문, 반복문을 이용한 문제 풀이 8(방정식) 목차 1. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 1(윤년 계산기) 2. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임) 3. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기) 4. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 4(청구 금액 계산기) 5. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 5(다독왕) 6. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, .. 더보기

728x90
반응형