0
반복 할 수있는 요소 하나를 꺼내어 배열의 최소값을 찾는 Java 프로그램을 작성하려고합니다. 다음은 내 코드입니다.최소 합계에 대한 배열의 값 지우기 Java
// Don't place your source in a package
import java.util.*;
import java.lang.*;
import java.io.*;
// Please name your class Main
class Main {
public static void main (String[] args) throws java.lang.Exception {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
int[] elements = new int[N];
for (int i = 0; i < N; i++){
elements[i] = in.nextInt();
}
int counter = 1001;
for (int c = 0; c < elements.length; c++){
if (sum(elements, c) <= counter){
counter = sum(elements, c);
}
}
System.out.print(counter);
}
public static int sum (int[] e, int n){
for (int j = 0; j<e.length; j++){
if (e[j] == n){
e[j] = 0;
}
}
int sum = 0;
for (int x: e){
sum+=x;
}
return sum;
}
}
간단한 실수를하는 것처럼 느껴지 긴하지만 코드를 살펴 보는 데 많은 시간을 할애했습니다. 덕분에 당신은 단지 하나의 요소를 제거 할하고, 다음에 메인 루프를 변경해야하는 잠재적으로 두 번 이상 반복 요소를 가질 수 가정
왜 값이 1001입니까? ..기다림! 왜이 논리와 무엇을 할 것인가? –
* "반복 될 수있는 하나의 요소를 꺼내어 배열의 최소값을 찾습니다. * : 나에게 의미가 없습니다. 배열의 최소값과의 연결은 무엇입니까? – Pac0
ur 문제의 제목과 세부 사항은 완전히 다릅니다 .. u는 최소값을 지우거나 최소값을 찾고 싶습니까? – ajc