-
N 의 약수 모두 더하기 [자바 코테 준비 4일차]CodeingTestPrac/Java Coding Test 2023. 6. 28. 11:17
자바 코테를 본 이후 졸업 프로젝트와 해커톤 준비로 거의 2개월간 공백인 상태에서 다시 적어가는 코테 시리즈 이다.
코테는 가급적이면 프로그래머스 환경에서 연습을 하는 중이며 , IDE 를 사용하는 코딩에서는 테스트 코드 파일을 만들어 작성중이다.
오늘 다시 푼 간 단 한 문제이다 . : https://school.programmers.co.kr/learn/courses/30/lessons/12954?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
출력을 위해서서 Arrays api 의 toString 을 사용했다.
void codding_test_1 () { int x = 2 ; int n = 5 ; long[] arr = new long[5]; arr[0] = 2 ; for(int i = 1 ; i < n ; i++){ arr[i] = (x * (i+1) ) ; } System.out.println(Arrays.toString(arr)); }
제한 조건
- x는 -10000000 이상, 10000000 이하인 정수입니다.
- n은 1000 이하인 자연수입니다.
매우 간단한 문제이지만 메모리 초과가 나는걸 확인했다. 제한 조건을 잘보자
정답 :
@Test void codding_test_1 () { int x = 10000000 ; int n = 1000 ; System.out.println(Arrays.toString(sol1(x,n))); } long[] sol1(int x , int n ){ long[] arr = new long[n]; arr[0] = x ; if( n == 1) return arr ; for(int i = 1 ; i < n ; i++){ arr[i] = arr[i-1] + x ; } return arr ; }
2) n 이 주어질때 약수를 모두 더해라
https://school.programmers.co.kr/learn/courses/30/lessons/12928
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
매우 간단 한 문제이다 O(sqr(N)) 으로 모든 소수의 합을 구할 수 있다.
import java.util.* ; class Solution { public int solution(int n) { int sum = 0 ; if(n == 0) return sum ; for( int i = 1; i * i <= n ; i++) { if(i*i == n ) { sum += i ; } else if (n % i == 0) { sum += i + (n/i) ; } } return sum ; } }
(추가로 차주 주말 토스 코테 예정을 준비중이며, 프로그래머스를 이용하며 인터넷 ,IDE 모두 사용 가능한 조건이라고 한다.)
빠른 시간안에 다시 코테폼을 올려보는것을 목표로 잡고 , 구현 위주 하루 3문제는 기본으로 풀 예정이다,
'CodeingTestPrac > Java Coding Test' 카테고리의 다른 글
코테 연습[자바 코테 준비 8일차] bfs 완탐(1) (0) 2023.07.03 코테 연습[자바 코테 준비 6일차] (0) 2023.06.30 구현 쉽지만 수학 문제 퀴즈 같은 구현[자바 코테 준비 5일차] (0) 2023.06.28 카카오 블라인드 2019 실패율 [자바 코테 준비 3일차] (0) 2023.05.05 Java 코테준비 2일차 (0) 2023.04.28