uploaded at 2022. 12. 31. 오후 9:16:18
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
// [문제 링크]: https://school.programmers.co.kr/learn/courses/30/lessons/134239
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.stream.*;
|
||||
class Solution {
|
||||
private double cal(double[] ar, int[] ra){
|
||||
double ans = 0D;
|
||||
if(ra[0]>ar.length+ra[1]-1){
|
||||
return -1;
|
||||
}
|
||||
for(int a = ra[0]; a < ar.length+ra[1]-1; a++) ans +=(ar[a+1]+ar[a])/2;
|
||||
return ans;
|
||||
}
|
||||
public double[] solution(int y, int[][] ranges) {
|
||||
double[] ans, answer = new double[ranges.length];
|
||||
int i = 0;
|
||||
double k = y;
|
||||
ArrayList<Double> test = new ArrayList();
|
||||
while(k>1){
|
||||
test.add(k);
|
||||
if(k%2==0) k = k/2;
|
||||
else k= 3*k+1;
|
||||
i++;
|
||||
}
|
||||
test.add(k);
|
||||
ans = test.stream().mapToDouble(x -> x).toArray();
|
||||
|
||||
for(int c = 0; c < ranges.length; c++){
|
||||
answer[c] = cal(ans,ranges[c]);
|
||||
}
|
||||
return answer;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user