[이 글은 이전에 쓰던 블로그에서 작성된 이후 새 블로그로 이전된 글입니다.]

  1. 배경이 ‘밤’이다.
    FireFox 등과 같이 Nightly Build 등의 개발 중인 버전을 공개할 것을 의미한다.

  2. 상대가 로봇
    불법 봇을 이용하여 개인정보를 수집하는 행위들을 강력히 규탄할 것임을 의미한다.

  3. 방패로 적의 공격을 막는 장면
    HTTPS 연결 될 때 나오는 방패 아이콘과 유사한데, 악성코드 침입 방지 기능의 강화로 해석할 수 있다.

  4. 변신
    두 가지 해석이 가능하다. 하나는 기존에 존재하는 사생활 보호 모드인 InPrivate 모드를 의미하며 두 가지 모드 간의 자유로운 전환과 더 강력해진 InPrivate 모드로 해석할 수 있을 것 같고, 그게 아니라면 한 컴퓨터를 여러 사용자가 사용할 때 브라우저가 사용자별로 최적화된 경험을 제공해준다는 의미일 가능성이 있다.

  5. 신발에서 나오는 부스터
    IE 10에 비해 더욱 빨라진 속도

  6. 광역 공격
    멀티 스레드를 사용해 효율적인 프로세스를 구현했다는 것을 의미한다.

  7. 마지막에 나오는 거대한 적
    최근 빈번히 일어나는 사이버 범죄에 대한 경각심을 유발하며, 마이크로소프트가 앞장서 이에 맞서 싸워 나갈 것을 의미한다.

  8. 계속(つづく)
    (7)에서 언급한 사이버 범죄와 계속 싸워 나간다는 마이크로소프트의 비전을 제시하고, IE 11의 꾸준한 업데이트를 상징한다.

==
너무 진지하게 받아들이셔도 곤란합니다.

[이 글은 이전에 쓰던 블로그에서 작성된 이후 새 블로그로 이전된 글입니다.]

#include <cstdio>
 
int n, line, res;
 
//ld is \, rd is /
void solve(int level, int horizon, int ld, int rd){
    if(level == n) res++;
    else {
        int ok = (~(horizon | ld | rd)) & line, i;
        while(ok){
            i = ok & -ok;
 
            solve(level+1, horizon | i, (ld | i)>>1, (rd | i)<<1);
 
            ok ^= i;
        }
    }
}
 
int main(){
    scanf("%d", &n);
 
    line = (1<<n)-1;
 
    solve(0, 0, 0, 0);
    printf("%d\n", res);
 
    return 0;
}

[이 글은 이전에 쓰던 블로그에서 작성된 이후 새 블로그로 이전된 글입니다.]

아침에는 어젯밤 늦게(2시) 잤던 관계로 살짝 피곤했습니다. 저는 아침에 잘 일어나는 편이라 제 때 일어났는데 나머지 두 명은 거의 좀비였음 ㅋㅋ

아침은 숙박했던 숙소에서 제공해줬는데 빵과 오렌지 주스, 주먹밥, 샐러드 등이 나오더군요. 처음에 간단하게 주먹밥과 반찬을 먹은 뒤 빵을 먹었습니다. 아침 먹고 짐을 싸고 내려와서 대회장 가는 차 안에서 모자란 잠을 약간 보충했습니다.

대회장에서는 대회 시작 전까지 강당에 모여서 대회 시간까지 기다렸습니다. 어제 예비소집 때 오지 않았던 설곽팀이랑 구경을 위해 부산에서 온 계절학교 친구랑 만나서 수다를 좀 떨다가 대회장에 들어갔습니다.

초반에 코딩 빠른 지학이가 쉬운 문제(A, G, I, L, K)를 초고속으로 짜서 적은 패널티를 만들어 놓고, 중반에 제가 J를 짜는 동안 옆에서 수학 잘하는 석환이가 수학 문제(C) 일반항을 유도하는 전략을 썼습니다. F는 그림만 보고 어려운 문제인 줄 알고 넘겼는데 지학이가 풀었습니다. 총 합을 최소화해야 하는 줄 알고 또 어려운 문제인 줄 알았는데 알고보니 최대값의 최소화여서 파라메트릭으로 쉽게 짜더군요.

그 동안 석환이가 C 일반항 유도에 성공해서 AC를 받았습니다. C를 모든 팀 중 최초로 맞춰서 다른 팀이 7문제였는데 저희 팀이 8문제로 1시간 가량 1위를 유지했었습니다. 옵저버라서 안 보였지만.

그 뒤로는 E를 제가 짜고 B를 지학이가 짜면서 서로 번갈아가면서 코딩 막힐 때 마다 자리를 바꾸면서 코딩했습니다. 코드 인쇄하면 가져다 주는데 그게 디버깅에 큰 도움이 됐습니다. 제가 E를 마무리해서 9문제가 되고, 어제 언급한 도쿄대 팀도 9 문제로 한동안 2위에 있었는데 도쿄대 팀이 10문제로 치고 올라가더군요. E 풀고 나서 D를 풀다가 화장실에 간 사이 후배가 B를 AC 시켰고, 10 문제를 풀었습니다.

D를 석환이의 방법대로 제가 코딩을 했는데 자꾸 TLE가 나서 좀 큰 데이터를 직접 넣어 본 결과 처리를 잘못해서 N^2 커팅을 유도했엇는데 실수로 N^3으로 짰다는 걸 발견했습니다. 그게 마감 4분전이라 열심히 고쳤는데 결국 틀렸습니다. 나중에 풀이를 들어보니 O(N)이라더군요.

옵저버 성적을 언급하지 말라는 얘기가 있었는데 푼 문제 수는 풍선도 주고 했으니 아마도 말해도 되는 것 같습니다. 패널티는 비밀입니다.

대회 끝나고는 네이버의 음성인식 강좌 및 NHN 홍보, 넥슨의 ‘게임의 재미를 구성하는 세 가지 축’이라는 강의를 들려주더군요. 넥슨 강의는 NDC 가서 직접 들었던 거 두 번째 듣는거라 재미가 없었습니다.

네이버 음성인식 알고리즘은 흥미롭기는 했는데 5시간 연속 코딩하고 와서 지쳐 있는데 듣는 강의라 정말 말 그대로 더 이상은 Naver… Zzz

강의 다음에는 풀이가 진행되었습니다. PPT는 영어인데 한국어로 풀이를 해서 외국 팀들은 못 듣지 않았을까… 풀이를 듣고도 D랑 H는 아직 어떻게 풀어야 되는지 모르겠더군요. 나중에 다시 풀어봐야 할 듯.

풀이 끝나고 스코어보드 프리즈 된 뒤 어떻게 변했는지 보여주는게 있었는데 이게 꿀잼이었습니다. 글로 잘 설명은 못하겠는데 막 틀렸다 맞았다 바뀌는걸 긴장감 있게 조절하더군요. 많이 틀리면서 꾸준히 제출하면 막 박수쳐주고 그랬음. 대부분 많이 틀리면 결국 틀렸지만…

대회 끝나고 거기서 출장뷔페를 먹고 돌아왔습니다. 쇼고 무라이는 역시나 오늘도 대식가. 학교에 9시 반 쯤 도착하고 12시 쯤 집에 도착했네요.

여튼 좋은 성적을 거둬서 기분이 좋습니다. 정말 재밌는 이틀이었습니다. 이 기세로 IOI도 나갈 수 있으면 좋겠네요 ㅠㅠ

ps) 알고스팟 채팅방 눈팅하다가 방금 H 풀이를 이해했네요. 문자열 어려워…

[이 글은 이전에 쓰던 블로그에서 작성된 이후 새 블로그로 이전된 글입니다.]

경기과학고등학교의 친구들과 함게 학교를 째고 ACM-ICPC(대학생 프로그래밍 경시대회)에 번외 참가하러 왔습니다. 원래 고등학생은 예선에만 번외참가했었는데(Challenge XX) 이번에는 본선에 번외 참가하게 되었습니다.

오늘은 예비소집이고, 내일이 본 대회이며 오늘은 4위의 성적을 거두었습니다. 처음에 저희 팀 자리에 잘못된 비밀번호를 알려주셔서 초기에 한 5분 정도 지연되는 바람에 5분 정도 늦게 시작한게 조금 아쉽네요.

1번은 1번답게 값 받아서 간단하게 사칙연산해서 출력하면 되고, 2번으로는 Slicing Tree라는 기출문제가 나왔습니다. 이전에 한 번 풀어본 문제였기 때문에 코딩 도중 약간 헷갈리기는 했지만 금방 짜서 제출할 수 있었습니다.

키보드가 엄청 부드러워서 좀 익숙하지 않았습니다. 다 짜고 시간이 남길래 키보드에 익숙해질 겸 팀원이 돌아가면서 풀었던 문제를 한 번 더 풀어봤습니다.

제가 원래 한 번 틀리면 그 뒤로 계속 틀리는 징크스가 있어서 걱정했는데, 다행히 예비소집 때는 컨디션이 좋았던 것 같습니다.

예비소집 끝나고 나서는 숙소에 짐을 풀었는데, 저희 숙소에 도쿄대 팀이 묵는다는 정보를 선생님께서 얻어오셨습니다. 도쿄대 팀에는 마코토 소에지마(rng), 쇼고 무라이 등 아는 사람은 아는 고수들이 있기 때문에 기대하고 있었는데, 카운터에 문의해서 숙소를 알아냈습니다(알려주면 안 될 것 같은데)

나중에 숙소로 쳐들어갈까 어쩔까 하다가 그냥 저희 방으로 들어왔는데 갑자기 선생님께 연락이 오더니 지금 도쿄대 팀이랑 얘기하고 있다고 숙소 앞으로 나오라고 하더군요. 내려가보니 정종광 선생님께서 유창한 일본어로 도쿄대 팀이랑 대화하고 있었고 같이 밥을 먹게 되었습니다.

한식집이었는데 보쌈 + 돌솥밥 + 불고기를 먹었습니다. 불고기를 좀 일찍 시켰어야 되는데 타이밍이 안 맞아서 돌솥밥을 다 먹고 불고기가 나왔다는게 좀 아쉽긴 했지만 맛있었습니다. 그리고 비쌌죠

처음에는 도쿄대 팀이랑 어색어색해서 말을 못 붙였는데 한 번 말 걸고 나니까 어느 정도 대화가 되더군요. 일본인이랑 제대로 대화해본 건 처음인 것 같네요.

저희 팀 한 명은 일본어 아예 못 하는데 나머지 한 명은 일본어 어느 정도 되는데 말을 못 걸더군요. 이런 때 아니면 언제 말 걸어보겠냐고 꼬드겼는데 결국 제대로 말 못걸고 끝났네요.

김치 같은거 매울것 같애서 맵지 않냐고 물어보니까 쇼고 무라이가 매운거 좋아한다고 ㅋㅋ 또 기억나는건 새우젓보고 뭐냐 그래서 새우(에비)라고 대답했더니 무슨 새우냐고 해서 그냥 작은 새우라고 했더니 자기들끼리 새끼 새우인가보다 이러면서 보쌈 찍어먹는게 재밌었음.

다른 사람은 배불러서 다 먹었는데 쇼고 무라이는 자기 테이블 음식 다 먹고 옆 친구 테이블 불고기도 다 먹더군요. 대식가 ㄷㄷ해

그쪽 팀은 청국장이 일본 낫토랑 비슷해서 그런지 청국장을 좋아하더라구요. 원래 국 같은거 다 같이 먹는건 우리나라 문화라 익숙하지 않을 것 같은데 잘 먹더군요.

처음에는 어색했는데 밥 다 먹고 나니까 그래도 나름 친해진 것 같은 기분을 느꼈습니다. 되게 소소하게 재밌는 하루였습니다.

내일 좋은 성적 거두면 좋겠네요 ㅎㅎ