JAVA:解答小数
📝 小数を解く
💬 与えられた数字のうち3つの数字を小数に加算すると、個数を求めてみます.数値を持つ配列numsをパラメータとする場合は、solution関数を完了してnumsの3つの異なる数値の小数を返します.
ex) nums = [1, 2, 3, 4], result = 1/ nums = [1, 2, 7, 6, 4], result = 4
💡 私の答え
💬 少数でない場合を先に処理し、else if文を使用して少数の場合を処理します.
少数の場合を先に処理して、少数でない場合も一緒に処理して、かえって少数でない場合を先に処理したほうがいいです.
これは簡単な難易度ですが、想像以上に時間がかかるので、記録のために書かれています.
👉 例
💡 他人の解答
💬 sqrt()関数を使用して平方根を求める
👉 例
プログラマー、少数を解いています
問題が発生した場合に削除
💬 与えられた数字のうち3つの数字を小数に加算すると、個数を求めてみます.数値を持つ配列numsをパラメータとする場合は、solution関数を完了してnumsの3つの異なる数値の小数を返します.
ex) nums = [1, 2, 3, 4], result = 1/ nums = [1, 2, 7, 6, 4], result = 4
💡 私の答え
💬 少数でない場合を先に処理し、else if文を使用して少数の場合を処理します.
少数の場合を先に処理して、少数でない場合も一緒に処理して、かえって少数でない場合を先に処理したほうがいいです.
これは簡単な難易度ですが、想像以上に時間がかかるので、記録のために書かれています.
👉 例
public int solution(int[] nums) {
int answer = 0;
for(int i = 0; i < nums.length - 2; i++) {
// i의 최댓값이 어디까지인 지 인지!
for(int j = i + 1; j < nums.length - 1; j++) {
// j의 최댓값이 어디까지인 지 인지!
for(int k = j + 1; k < nums.length; k++) {
int temp = nums[i] + nums[j] + nums[k];
for(int n = temp - 1; n > 0; n--) {
if(n != 1 && (temp % n) == 0)
// 나누는 수가 1이 아닌 데도 나눠지는 경우 => 소수가 아닌 경우
break;
else if(n == 1)
// 나누는 수가 1인경우 => 소수인 경우
answer++;
}
}
}
}
return answer;
}
+関数の使い方の練習が必要💡 他人の解答
💬 sqrt()関数を使用して平方根を求める
👉 例
public Boolean isPrime(int num){ // num이 위의 temp와 같은 값
int cnt = 0;
for(int i = 1; i <= (int)Math.sqrt(num); i ++){
if(num % i == 0) cnt += 1;
}
return cnt == 1;
}
Referenceプログラマー、少数を解いています
問題が発生した場合に削除
Reference
この問題について(JAVA:解答小数), 我々は、より多くの情報をここで見つけました https://velog.io/@ro_sie/JAVA-소수-문제-풀기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol