0411小数点以下を作成
6907 ワード
質問する
与えられた数字のうち3つの数字を小数に加算すると、個数を求めてみます.数値を持つ配列numsをパラメータとする場合は、solution関数を完了してnumsの3つの異なる数値の小数を返します.
せいげんじょうけん
I/O例
numsresult[1,2,3,4]1[1,2,7,6,4]4
I/O例説明
I/Oサンプル#1[1,2,4]を使用して7を作成できます.
I/O例#2
[1,2,4]を使用して7を作成できます.
[1,4,6]を使用して11を作成できます.
[2,4,7]は、13を作成するために使用することができる.
[4,6,7]を使用して17を作成できます.
きほんコード
class Solution {
public int solution(int[] nums) {
int answer = -1;
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
System.out.println("Hello Java");
return answer;
}
}
正しいコード
class Solution {
public int solution(int[] nums) {
int answer = 0;
for(int i = 0; i<nums.length-2;i++){
for(int j = i+1; j<nums.length-1;j++){
for(int k = j+1; k<nums.length; k++){
int sum = nums[i] + nums[j] + nums[k];
int a = 0;
for(int x = 2; x <=sum/2; x++){
if(sum%x==0) {
a++;
break;
}
}
if(a==0) answer++;
}
}
}
return answer;
}
}
問題を解く
まず3つ選んでから作るので、forゲートを3つ返却します.繰り返し文の回数を最小限に抑えるためにnums.legenthの後ろに-2と-1を追加しましたfor文をもう一つ返して、次の小数点かどうかを尋ねました.sum%xの値が0の場合、aを増やし、切断方法で記述します.
Reference
この問題について(0411小数点以下を作成), 我々は、より多くの情報をここで見つけました https://velog.io/@xodus05/0411-소수-만들기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol