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번)

=그 이름을 모두 바꿔줌 (그냥바꾸면 일일히 찾아서 바꿔야하는데 이렇게 하면 그변수 이름이 모두 바뀜!! 문화대혁명)