public class Solution {
public int[] solution(int[] arr) {
int[] answer = new int[] {};
return answer;
}
}
240118 updated.
using System.Linq;
public class Solution
{
public int[] solution(int[] arr)
{
int[] answer = new int[] {};
// arr 의 요소가 1개일 때
if (arr.Length == 1)
{
arr[0] = -1;
return arr;
}
// arr 의 요소가 2개 이상일 때 -- Array.Min() - 최솟값 찾기
int min = arr.Min();
answer = arr.Where(x => x != min).ToArray();
return answer;
}
}
// Array.Min() - 배열에서 최솟값 구하기
// Linq - Where 를 배워서 적용해보았다 !
과거의 시행착오s
대차게 실패-!
List 추가해서 풀었다가 시간이 오래걸려서 그런건가..?
using System.Collections.Generic;
public class Solution
{
public int[] solution(int[] arr)
{
int[] answer = new int[] {};
List<int> arrToList = new List<int>();
int[] forOneIndex = {-1};
//#1 arr.Length 가 1 이면 return [-1]
if (arr.Length == 1)
return forOneIndex;
//#2 Array -> List
foreach (int num in arr)
{
arrToList.Add(num);
}
arrToList.Sort(); // 오름차순
arrToList.Reverse(); // 내림차순으로 정렬
// 숫자들이 내림차순으로 정리되어 있으니 맨 뒤에 있는 수가 제일 작겠죠 !
arrToList.RemoveAt(arrToList.Count - 1);
answer = arrToList.ToArray(); // answer 는 Array, 따라서 List 를 Array 로 !
return answer;
}
}
코드 실행은 성공해서 좋았는데... 그땐 좋았지..
어림도 없지 ~!
List 사용한 게 문제였을까 ?
다시 Array 로만 풀어보자 !
역시 어림도 없지 또실패 !
using System;
public class Solution
{
public int[] solution(int[] arr)
{
int[] arrForOneIndex = {-1};
// #1 arr.Length 가 1 이면 return [-1]
if (arr.Length == 1)
return arrForOneIndex;
// #2 arr.Length 가 1보다 크면
Array.Sort(arr); // 먼저 오름차순
Array.Reverse(arr); // 내림차순으로 정렬
// 숫자들이 내림차순으로 정리되어 있으니 맨 뒤가 제일 작겠죠 !
Array.Resize(ref arr, arr.Length -1);
return arr;
}
}
잘 되는 듯 했으나 ~
hmm.. 🤔
휴
머리가 정말 안 돌아가서
나중에..
추가적으로 공부를 더 해야할 것 같다.
처음 코드카타 제출을 못한 날이 되겠군..!
그래도 문제 해결하려고 노력은 정말 열심히 했으니 후회는 없다.
오늘은 일단 후퇴.