뇌운동일지

매일매일 코딩테스트 공부 본문

알고리즘 문제풀이

매일매일 코딩테스트 공부

purpleduck 2021. 12. 10. 19:26

codility 에서 문제를 풀어보기로 함

 

lesson 을 풀어봅니다

1. 

Java 에서 특정 문자 기준으로 String 잘라서 String 배열에 넣기 

String str = "A,B,C,D";
String[] array = str.split(",");

 

2.

int 배열을 Integer ArrayList 로 

https://www.delftstack.com/ko/howto/java/convert-int-array-to-arraylist-java/

-> 여기서 개선된 for문 쓰는 게 그냥 외우기 간단해보인다

 

integer arraylist to int array

public static int[] convertIntegers(List<Integer> integers)
{
    int[] ret = new int[integers.size()];
    for (int i=0; i < ret.length; i++)
    {
        ret[i] = integers.get(i).intValue();
    }
    return ret;
}

https://stackoverflow.com/questions/718554/how-to-convert-an-arraylist-containing-integers-to-primitive-int-array

 

ArrayList 마지막 값 뽑아서 ArrayList 맨 앞에 넣기

arraylist.get(arraylist.size()-1);

삭제 remove()

 

리스트 맨 앞에 요소 추가

list.add(0, yourObject);

 

3.

array to set 

set 에 key value 형태를 저장해서 key에 원소 value 에 반복 횟수 저장 -> 이게 좋은 방법일까?

 

이거 문제를 이해 못함. 영어를 잘 못해서 그런가봄. 

 

The array contains an odd number of elements, and each element of the array can be paired with another element that has the same value, except for one element that is left unpaired.

배열에는 홀수개의 요소가 포함되어 있으며, 배열의 각 요소는 짝을 이루지 않은 상태로 남아 있는 한 요소를 제외하고 동일한 값을 가진 다른 요소와 짝을 이룰 수 있습니다.

 

홀수번 등장하는 녀석을 return 하면 된다고 함. 

Hash 자료구조를 사용해보라고 하는데, 그걸 명확히 알지 못하는 중. 

HashMap : 뭐 적당히 key, value 형태로 순서없이 저장하고, key 는 중복 불가, value 는 중복 가능.

put(), get(), clear(), remove()

 

이 문제의 풀이

https://stroot.tistory.com/85

-> 잘 참고해서 품. 좋은 풀이

 

Java 개선된 for문

-> 설명하긴 어렵고 한번더 머리에 넣음

 

4. 

Collections의 최소값을 뽑는 min메소드가 있다고 함. 세상에나 이걸 모르고 배열을 순회하고 있었다. -> collection 에 대해서는 나중에 자세히 알아볼 것

Collections.min() 이런 식으로 쓴다

 

이 문제의 풀이 

https://cchoimin.tistory.com/entry/Codility-TapeEquilibrium-100%EC%A0%90

 

5.

 we want to find the earliest moment when all the positions from 1 to X are covered by leaves

1부터 X까지 모든 위치에 잎이 나타나야 횡단 가능 

-> 영어를 잘 안읽어서 헷갈려하는중

시간복잡도를 고려해서 풀어야 함.

1부터 X까지 순열이 되는지를 체크하면 되는 문제 -> 중복을 허용하지 않는 자료구조인 set 을 활용한다. 

 

N은 X보다 작다는 조건은 딱히 없음

 

이 문제의 풀이

https://tram-devlog.tistory.com/entry/Codility-42-FrogRiverOne

 

6.

 

Comments