출처 : https://www.acmicpc.net/problem/1244

정답 : https://github.com/stemp12/acmicpc.net/blob/master/2016.02/1244.cpp


이건 그냥 딱봐도 초등부 문제다. 글만 요란하지 실상은 매우 쉽다. 이프 포문만 할수있다면 가볍게 풀 수있는 문제이다.

남자 여자 따로 분리해서 처리해주면 끝인 그런문제이다.

설명은 더이상 생략한다.

'Algorithm' 카테고리의 다른 글

[AC] 1268 임시 반장 정하기  (0) 2016.02.23
[AC] 2526 싸이클  (0) 2016.02.23
[AC] 11441 합 구하기  (0) 2016.01.28
[AC] 9442 Sort me  (0) 2016.01.28
[AC] 1244 스위치 켜고 끄기  (0) 2016.01.28

출처 : https://www.acmicpc.net/problem/11441

정답 : https://github.com/stemp12/acmicpc.net/blob/master/2016.01/11441.cpp


이 문제의 풀이는 이미 내가 과거에 풀어본 배열내 구간 계산이므로 세그먼트 트리를 적용시키면 된다. 설마 이 문제를 읽고 구간 a부터 b까지의 합을 계속 더하고 더하고 하는 사람은 없을것이다. 무조건 TL이 나올것이다.

세그먼트 트리도 정답이지만 이 문제는 조금 더 생각하면 다른 해법도 있다.

어차피 구간내의 합이기 때문에 0부터 계속 더해나가는 것이다. 즉

a[0]=a[0]

a[1]=a[1]+a[0]

a[2]=a[2]+[1]

a[3]=a[3]+a[2]

이렇게 하면 구간 0부터 n까지의 합이 계속 저장이 된다. 그리고 입력으로 구간이 입력이 되면 그 구간을 빼주면 된다.

즉 a~b구간의 합은 0~b구간의 합에서 0~a구간의 합을 뺀다면 a~b구간의 합이 되는것이다. 이렇게 푸는것도 간단히 푸는 방법이다.

그러나 나는 세그먼트트리 연습겸 저렇게 풀어봤다.

이런 문제가 참 괜찮은 문제라고 생각한다.


'Algorithm' 카테고리의 다른 글

[AC] 2526 싸이클  (0) 2016.02.23
[AC] 1244 스위치 켜고 끄기  (0) 2016.02.23
[AC] 9442 Sort me  (0) 2016.01.28
[AC] 1244 스위치 켜고 끄기  (0) 2016.01.28
[AC] 1268 임시 반장 정하기  (0) 2016.01.28

출처 : https://www.acmicpc.net/problem/9442

정답 : https://github.com/stemp12/acmicpc.net/blob/master/2016.01/9442.cpp

이 문제도 쉽다. 아무래도 오늘은 쉬어가는 날인가보다. 잡는 문제마다 쉽다.

문제를 간략히 설명하면 n을 입력받고 string한문장을 입력받는다. string은 알파벳인데, ABC가 아니라 저렇게 입력하는게 새로운 알파벳 순서가된다.

그다은 n개의 단어가 입력이 되는데 그 단어를 새로 입력받은 알파벳 순서대로 정렬하면 되는 문제이다.

sort함수를 쓰고 cmp 만 따로 처리해주면 간단히 해결되는 문제다.

단, 비교하는 문장이 같을 경우는 true가 아니라 false를 리턴해줘야한다. 

        idx1++; idx2++;
        if (idx2 == str2.length()) return false;
        else if (idx1 == str1.length()) return true;

그래서 나는 이렇게 표현하였는데 만약 idx2의 인덱스가 길이와 같아졌다면(아마 그럼 위 포문에서 결과가 나오지 않은 경우 즉 전부 동일한 경우이다.) 이 경우는 false를 리턴해준다고 하였다. 분명 모두 동일하다면 idx1과 idx2가 동일하겠지만, idx1를 먼저 쓰게 되면 같은경우 true를 리턴하게 되어 함수가 비정상 종료가 된다. 이 점만 주의하면 된다.


'Algorithm' 카테고리의 다른 글

[AC] 1244 스위치 켜고 끄기  (0) 2016.02.23
[AC] 11441 합 구하기  (0) 2016.01.28
[AC] 1244 스위치 켜고 끄기  (0) 2016.01.28
[AC] 1268 임시 반장 정하기  (0) 2016.01.28
[AC] 2526 싸이클  (0) 2016.01.28

출처 : https://www.acmicpc.net/problem/1244

정답 : https://github.com/stemp12/acmicpc.net/blob/master/2016.01/1244.cpp


문제만 봐서는 이 문제는 어려울줄 알았는데...정말 쉬운문제였다. 쓸 내용도 없다. 그냥 시키는대로 코딩하면 끝난다.

단, 문제를 잘 보면 출력을 20개단위로 라인을 구분하라고 하였다. 이부분만 처리해주면 된다. 

이런건 사실 15분내에 풀어야 한다고 생각한다.

'Algorithm' 카테고리의 다른 글

[AC] 11441 합 구하기  (0) 2016.01.28
[AC] 9442 Sort me  (0) 2016.01.28
[AC] 1268 임시 반장 정하기  (0) 2016.01.28
[AC] 2526 싸이클  (0) 2016.01.28
[AC] 2672 여러 직사각형의 전체 면적 구하기  (0) 2016.01.28

+ Recent posts