문제 : 

 

내가 성공한 풀이 : 

public int solution(int[] array) {
    int[] count = new int[1000];
    
    for (int i = 0; i < array.length; i++) {
        int j = array[i];
        count[j]++;
    }//for i
    int max = 0;
    int maxnum = 0;

    for (int i = 0; i < count.length; i++) {
        if (count[i] > max ) {
            max = count[i];
            maxnum = i;
        } else if (count[i] == max) {
            maxnum = -1;
        }
    } //for i
    return maxnum;
}

 

 

-> 우선 주어진 배열을 돌면서 해당 값의 index에 해당하는 값을 1씩 증가시키는 반복문을 돌린다. 그 다음 새로 만들어진 배열을 돌면서 이전 값보다 크면 maxnum을 바꾸고 동일하면 -1로 만들어 주었다. 


풀면서도 처음부터 배열의 크기를 1000으로 할당하고 들어가는것이 별로였지만 역시나 Map을 통해서 해결하는 방법이 있었다. 

문제 : 

 

내가 성공한 풀이 : 

public int[] solution(int n, int k) {

    int[] answer = new int[n];
    int startnum = k/n - (n-1)/2;

    for (int i = 0; i < n; i++) {
        answer[i] = startnum;
        startnum++;
    }

    return answer;
}

 

-> -> 이 문제의 key는 값을 도출해내는 규칙을 찾아내는 것에 있다고 생각한다. answer배열의 숫자가 어떻게 구해지는지에 대해서 규칙을 찾아내면 어렵지 않게 해결할 수 있다. 

처음 시작은 1부터 시작해서 더한값이 total 보다 큰지 작은지 비교하려고 했지만 반례로 음수부터 시작하는 배열이 문제였다. 
결국 찾아낸 규칙은 total / num 의 값이 배열의 중간 즈음 위치한다는 것이다. 

1. 이클립스와 자바 다운로드

 

이클립스로 자바를 시작하기 위해서는 

 

오라클(Oracle)에서 제공하는 Java와 이클립스 툴을 다운 받은 뒤 압축을 풀어주어야 한다. 

 

이클립스를 설치 후 exe파일을 실행하면 workspace를 대부분 C/ProgramFiles 내에 만들겠냐고 뜨는데

 

이때 본인이 원하는 곳에 지정하거나 그대로 진행해도 무방하다. 

 

이클립스를 사용하는 도중에 workspace를 바꾸고 싶다면...... 바꿀수야 있겠지만 경험 상 오류가 생기기 아주 쉬우니

 

첫 스텝을 잘 디뎌보자는 의미로 여러번 고민하고 파일의 위치를 지정하자 

(물론 내가 뭔가 실수해서 오류가 생겼을 확률 99.99%지만 막상 오류를 만나게 되면 기분이 나빠지니까 조심해서 나쁠 거 없지........;;)

 

( 작업 위치를 변경하기 위해서는 file - switch workspace 에서 변경할 수 있다. 하지만 언제 어디서 어떤 오류가 발생할지 모르니 진행을 많이 한 프로젝트이거나 중요한 내용이라면 어딘가에 백업해두고 변경하는 것을 강추한다. )

 

 

2. 한글이 깨지지 않도록 인코딩

 

이클립스에서 한글을 출력하고자 할 때, 뀕 뛟 이런 글자와 함께 글자가 깨지는 경우가 생긴다. 

 

이를 방지하기 위해서는 인코딩 작업을 수행해야하는데 대표적인 방법에는 두가지가 있다. 

 

첫번째로는, 모든 페이지의 가장 위에 인코딩 멘트를 작성해주는 것이고

두번째로는, 이클립스 자체에서 utf-8을 지원하도록 설정해주는 것이다. 

 

이전까지는 첫번째 방법으로 인코딩 해왔지만 이번에는 두번째 방법으로 했다. 

 

두번째 방법을 설명해보면 이클립스의 메뉴 중 window - preferences 에서 검색하는 곳에 enc을 누르면 encoding을 할 수 있는 설정이 모두 뜬다. 그 중에서 workspace - text file encoding, css, html, jsp 의 encoding을 utf-8로 설정해주면 java로 웹페이지를 만들 때는 문제 없이 한글을 출력 할 수 있을 것이다. 

 

 

3. 프로젝트, 패키지, 클래스 이름 결정에 꿀팁을 제공하자면

 

실무에서는 패키지명, 클래스명에 숫자나 _ 등과 같은 기호는 잘 사용하지 않는다고 한다. 

 

하지만 공부 할때는 구분에 용이하니까 종종 사용해도 무방하다. 

+ Recent posts