TIL
링큐 배열 비쥬얼 스튜디오 단축키 조금
박민혁_kog
2023. 8. 29. 21:02
Linq
사용 안할거 같던 링큐를 코딩테스트 에서 써봤다 어렵긴만 한거라고 생각됬는데 간단하게 사용할수도 있었다
using System.Collections.Generic;
using System;
using System.Linq;
public class Solution {
public int[] solution(int[] arr) {
int[] answer;
List<int> check= new List<int>(arr);
int min=arr.Min(); //여기가 링큐 부분
if(arr.Length==1)
{
arr[0]=-1;
return arr;
}
else
{
check.Remove(min);
answer=check.ToArray(); // 리스트를 배열로
}
return answer;
}
}
List -> 배열
List<int> intList = new List<int>() { 1, 2, 3, 4, 5};
int[] intArray = intList.ToArray();
Console.WriteLine($"intArray : {String.Join(", ", intArray)}")
배열 -> 리스트
int[] intArray = { 1, 2, 3, 4, 5 };
List<int> intList = intArray.ToList();
Console.WriteLine($"intList : {String.Join(", ", intList)}");
배열 -> 리스트
배열을 리스트로 생성하기
int[] intArray = { 1, 2, 3, 4, 5 };
List<int> intList = new List<int>(intArray);
Console.WriteLine($"intList : {String.Join(", ", intList)}");
약수의 개수와 덧셈
약수가 홀수면 빼주기 때문에
첫 의도는 제곱근 x 제곱근 =원래수 라서 약수가 홀수인 (제곱근이 자신의 약수인) 수를 검거 하려 했으나 실패했다.
실패 ex
using System;
public class Solution {
public int solution(int left, int right) {
int answer = 0;
for(int i=left;i<right+1;++i)
{
answer+=i;
if(Math.Sqrt(i)*Math.Sqrt(i)!=i)
{
answer-=i*2;
}
}
return answer;
}
}
성공ex
그래서 사용한게 파워 함수 솔직히 말해서 왜 sqrt의 제곱은 안되고 파워의 제곱은 성공했는지 모르겠다 심오한 함수의 세계
using System;
public class Solution {
public int solution(int left, int right) {
int answer = 0;
for(int i=left;i<right+1;++i)
{
answer+=i;
if(Math.Pow((int)Math.Sqrt(i), 2) == i)
{
answer-=i*2;
}
}
return answer;
}
}
와 진짜 중요한 거
1.리스트
Inventory = new List<Item>() {};
// 난 빈 리스트 동적할당 이렇게 하는줄 알았는데
Inventory = new List<Item>();
// 이렇게 하는거 였음 !!! 레전드레전드
2. Ctrl + F 대체
메서드 를 찾을땐
Ctrl + ,
3. 이름 바꿀때
Ctrl + r+ r (r 2번)
=그 이름을 모두 바꿔줌 (그냥바꾸면 일일히 찾아서 바꿔야하는데 이렇게 하면 그변수 이름이 모두 바뀜!! 문화대혁명)