김사케는 무엇을 했는가

오랜만에 블로그 글을 써 보려고 합니다. 방학 숙제로 일기 쓰기를 개학 1일 전에 몰아 쓰는 느낌인 겁니다.

죽이는 타이어. 폭탄 받아라!

포트홀을 또 밟았습니다. 포트홀 밟아서 타이어 교체한 지 얼마 되지 않았는데 또 터졌습니다.

친구가 아르바이트를 하고 있는 카페에 갔습니다.

당신의 손목, 티라미수로 대체되었다.

손목을 갈아 넣은 티라미수는 맛있었습니다.

800점!

최근에 오프라인에서 마작을 쳐 보고 있습니다. 25,000점에서 시작한 게임이었지만 어느새 800점밖에 남지 않았습니다.

마작에 지고 쫄딱 벗겨진 훈이.

훈이가되

해피치에 또 갔습니다. 영업 종료라는 말에 즉시 출동했는데, 알바분의 강아지가 너무 귀여웠습니다. 지금은 동대문에서 서대문구 불광동으로 이전한 상태입니다.

돼 지 행 동

초밥의 탑을 쌓았습니다. 돼지인고

고양이.

수원에 데이트를 하러 갔는데, 거리를 걷다 보니 고양이가 나왔습니다. 너무 귀엽지 않나요?

스파패 극장판을 보고 왔습니다. 역시 아냐는 귀엽고 로이드는 세금 10배 내라.

날씨가 좋아져서 오랜만에 자전거를 탔습니다. 중랑천과 한강을 끼고 40km정도 달렸습니다. 사람살려

벚꽃이 만개한 날, 사진을 찍으러 갔습니다. 꽤나 잘 나온 사진이 있었네요.

트릭컬 콜라보 카페.

볼따구겜으로 유명한 릭트컬 트릭컬 콜라보 카페에 다녀왔습니다. 원래는 홍대에서 데이트를 하고 있었는데, 마침 바로 앞에 콜라보 카페가 있었습니다. 진짜예요.

사전투표로 투표권을 행사했습니다. 데이트하러 가는 김에 투표도 했습니다.

또 자전거를 탔습니다. 이번에는 공항철도를 타고 아라자전거길의 시작점에서부터 출발해 한강 구간 인증 스탬프를 찍고 집으로 돌아오는 장장 67km의 여정이었습니다. 진짜 힘들어 죽는 줄 알았습니다.

쯔모!

3인 마작이었습니다만, 더블리치 일발 쯔모를 달성했습니다.

그리고 이 글을 작성하고 있는 지금은 이전한 해피치에 와서 무언가를 또 먹고 있습니다. 요거트 존맛

XZ Utils에서 백도어가 발견되다

리눅스에서 데이터 압축에 필요한 도구인 'XZ Utils'에서 백도어가 발견되었습니다. CVE-2024-3094로 명명된 이 취약점은 현지 시간으로 2024년 3월 29일 발표되었습니다. 소프트웨어 공급망 공격의 일종으로, 5.6.0 ~ 5.6.1 버전에서 무단 원격 액세스를 허용하도록 하는 백도어가 심어져 있었다고 합니다. 이 백도어가 동작하면 공격자가 서버의 SSH에 인증 없이 로그인이 가능하다고 합니다. 이 취약점은 대부분 리눅스와 관련이 있지만 일부 macOS에서도 같은 문제가 있는 것으로 나타났습니다.

CVSS 점수라고 하는 취약점의 위험성을 표기하는 점수가 있습니다. 이 취약점은 CVSS 점수 10.0점으로, 부여할 수 있는 최대 점수를 받았습니다. 그만큼 IT 업계에서는 이 취약점을 심각하게 보고 있다는 것입니다. 한국인터넷진흥원 인터넷침해대응센터에서도 4월 1일 공지를 올리며 보안 조치를 적용할 것을 권고했습니다.

이번 사건이 다른 사건과 다른 점이 하나 있습니다. 이번 사건에서는 공격자가 GitHub에서 2021년부터 여러 오픈소스 프로젝트에 참여하면서 XZ 프로젝트 관련자로 등극한 이후 백도어를 심었고, 거의 2~3년 가까이를 공들이면서까지 이번 공격을 실행했다는 점입니다. GitHub에서는 XZ Utils 관련 깃허브를 폐쇄시켰습니다.

그렇다면, 이 취약점이 나에게도 해당되는지 궁금할 수도 있을 것 같습니다. 그래서 직접 확인해 보았습니다. 확인하는 방법은 간단합니다. 리눅스나 맥의 터미널에서 이 명령어를 입력해 봅니다.

xz --version

이 명령어의 결과값이 이 둘 중 하나라면 이 취약점에 해당된다는 겁니다.

xz (XZ Utils) 5.6.0 또는 5.6.1
liblzma 5.6.0 또는 5.6.1

만약에 이렇게 나온다면 다음 세 가지 조치 중 두 가지를 하면 된다고 합니다.

  • 리눅스 배포판 또는 macOS를 업데이트한다.
  • XZ Utils를 다운그레이드하거나,
  • SSH 전체를 비활성화시킨다.

문제가 될 수 있는 리눅스 배포판은 다음과 같습니다.

  • 레드햇: 페도라 41과 페도라 로하이드
  • 수세: Tumbleweed, MicroOS
  • 데비안: Stable 버전에서는 없음
  • 칼리: 3월 26일~29일 사이 업데이트를 진행한 적이 있다면 해당

리눅스뿐만 아니라 맥에서도 XZ Utils를 일부 사용하고 있는 만큼 맥에서도 조치가 필요할 텐데요, brew update , brew upgrade xz 를 실행하면 XZ가 5.4.6으로 다운그레이드됩니다.

XZ Utils의 버전이 5.4.6으로 다운그레이드되었다.

다운그레이드한 버전에서도 취약점이 발견되지 않으리라는 보장은 없지만, 현 시점에서 공식적으로 확인된 바는 없다고 합니다. 공격자가 여러 프로젝트에 참여하면서 500회 이상의 커밋을 한 것으로 알려져 있어, 백도어가 심어진 다른 프로그램이 존재할 수도 있다고 합니다.

국내에서는 이 취약점으로 인한 피해는 아직 접수된 바가 없다고 하지만, 치명적인 취약점인 만큼 최신 버전으로의 업데이트를 하지 않을 것을 당부했습니다.

카툰컵 양갈래컵 후기

카툰컵 Zero: ~Prologue~제 1회 양갈래컵에 참가했습니다. 카툰컵은 11문제 중 2문제를 풀어 279명 중 94등을, 양갈래컵은 10문제 중 1문제를 풀어 255명 중 217등을 기록했습니다.

대회는 저번 주였지만 후기를 좀 늦게 썼습니다. 다른 일정 때문에 바쁘게 살아서 블로그에 신경을 못 썼네요.

31495

카툰컵 A, AC / 3

그게 무슨 소리니... 사실 봇치 더 락에서는 저 발언을 한 적이 없습니다. 그런데 왜 밈이 된 거냐고...

주어지는 문자열에서 세 가지를 판별하면 됩니다.

  • 문자열이 " 으로 시작하는가
  • 문자열이 " 으로 끝나는가
  • 문자열의 길이가 3 이상인가

이 조건이 모두 참인 경우, 문자열의 맨 앞과 맨 뒤의 "을 제외한 문자열을 출력하면 되고, 아닌 경우 CE 를 출력하면 되는 간단한 문제였습니다.

31496

카툰컵 B, AC +1 / 16

들어오는 문자열은 1개 이상의 단어로 이루어져 있습니다. 그래서...

  • 문자열이 찾아야 할 단어 S와 일치하는지
  • 문자열이 S_ 으로 시작하는지
  • 문자열이 _S 으로 끝나는지
  • 문자열 안에 _S_ 이 포함되어 있는지

이 조건들 중 한 가지 이상이 참이라면 아이템의 개수를 더해주는 방식으로 코드를 짰습니다. 생각해보니까 들어오는 문자열을 _를 기준으로 split 해주면 되는 거였네요.

31497

카툰컵 C, TLE -3

간단한 인터랙티브 문제였습니다. 그런데 저는 인터랙티브 문제를 풀어본 적이 아마도 없을 겁니다. 그래서 예상치 못한 결과를 받은 건가 싶네요.

사람은 최대 500명이고, 질문은 최대 1000번까지 가능하므로, 그냥 모든 사람에 대해 2번씩 질문을 던집니다. 생일인 사람에게 질문을 하면 두 번의 질문에 대해 인터랙터의 답이 모두 1이라면 걔가 정답이고, 최소 1번은 인터랙터의 답이 1이므로 그 값을 저장했다가 나중에 정답으로 출력하면 될 것 같은데...

여전히 시간 초과를 받습니다. 왜일까요...?

UPDATE: 드디어 맞았습니다!!를 받았습니다! 인터랙티브 문제에서는 출력을 하고 나서 개행 문자(\n)를 출력해야 하는데, 개행 문자를 쓰지 않아 시간 초과를 받았던 것입니다. 이제 저는 이 문제를 맞았습니다!

감사합니다감사합니다감사합니다

31472

양갈래컵 A, AC / 77

정사각형 모양의 색종이를 자른 다음의 넓이 W가 주어질 때, 처음 색종이의 둘레를 구하는 문제입니다.

일단 원래 넓이를 구하고, 넓이를 둘레로 바꿔주면 되는 간단한 문제였습니다.

import sys
import math

w = int(sys.stdin.readline().strip())
print(int(math.sqrt(w*2)*4))

31474

양갈래컵 C, 시도하지 못함

양갈래 손님들이 앉는 경우의 수를 구하는 문제입니다. 뭔가 조합 어쩌고로 풀릴 것 같은데... 안 될 것 같아서 튀었습니다.

이럴 줄 알았으면 고등학교 때 수학 좀 할 걸...

31479

양갈래컵 H, 시도하지 못함

부정적분 어쩌구가 보여서 일단 튀었습니다. 왜냐면... 저는 고등학교 때 미적분을 배운 적이 없었고, 대학교 1학년 1학기 때 미적분 기초를 배웠지만 저는 대학수학 과목을 D를 받아버렸기 때문입니다. 어떻게 사람 성적이 D

나중에 toycartoon님에게 들었지만 원래는 이 문제에 인테그랄 양의 그림이 들어갈 예정이었다고 합니다.

인테그랄 양.

하지만 저는 수학이 시러요!!!

수학시러!

그렇게 저는 대회 두 개에서 문제 세 개를 풀었습니다. 그래도 이 정도면 나쁘지 않습니다.

카툰컵 한 시간만 풀고 이후에 여자친구랑 고기 먹었습니다. :blobnom:

YOASOBI – HEART BEAT

NHK에서 주최하는 특별 음악 프로그램인 '18제'에서 발표된 곡입니다.

18제, 18fes는 NHK에서 매년 한 번 열고 있는데, 17세부터 20세까지의 청소년을 대상으로 응모를 받아, 1,000명의 청소년과 아티스트가 함께 무대를 만듭니다.

이 단 한 번을 위해 아티스트가 만드는 신곡은 보통 이 나이대의 청소년들을 위해 주는 메시지로 만들어집니다.

2023년 18제의 로고.

いつか心にもない軽口で
이츠카 코코로니모나이 카루쿠치데
언제였나 마음에도 없는 가벼운 말로

みだりに君を怒らせてしまったね
미다리니 키미오 오코라세테시맛타네
멋대로 너를 화나게 해버렸어

「ごめんね」さえ言い出せなかった
고멘네사에 이이다세나캇타
"미안해"라는 말조차 꺼내지 못한건

この心臓の音がうるさくて
코노 신조-노 오토가 우루사쿠테
이 심장 소리가 시끄러워서

いつだっけ これ以上は止めにしようと
이츠닷케 코레이죠-와 야메니시요-토
언제였나 이 이상은 그만두려고

組み上げてきた積み木を手放した
쿠미아게테키타 츠미키오 테바나시타
쌓아올려왔던 벽돌을 내려놓았어

鼓動に揺れた指先に触れて崩れてしまう前にと
코도오니 유레타 유비사키니 후레테 쿠즈레테 시마우 마에니토
고동에 흔들린 손가락에 닿아서 무너져내리기 전에 라며

そう悩みの種はいつも(いつも)
소- 나야미노 타네와 이츠모 (이츠모)
그래, 걱정거리는 언제나 (언제나)

誰かのことと明日のことと未来のことばかりだ
다레카노 코토토 아시타노 코토토 미라이노 코토 바카리다
누군가에 대한것과, 내일에 대한것, 미래에 대한것 뿐이야

ねえ考えるほど駆け足で 脈打つリズム
네에 칸가에루호도 카케아시데 먀쿠우츠 리즈무
있지, 생각할수록 더 맥박이 뛰어가는 리듬

もっと上手にもっと綺麗に刻めたら
못토 죠-즈니 못토 키레이니 키자메타라
더 예쁘게, 더 잘 새길 수 있다면

足がすくんでしまっても声が震えても お構いなし
아시가 스쿤데 시맛테모 코에가 후루에테모 오카마이나시
다리가 움츠러들어도, 목소리가 떨려도 상관 없이

心は置き去りのままで加速していくビート
코코로와 오키자리노 마마데 카소쿠시테이쿠 비-토
마음은 내버려둔 채로 가속하는 비트

まだ準備も出来ていないのに
마다 쥰비모 데키테나이노니
아직 준비도 안됐지만

右向け右の通りにはみ出さないように
미기무케 미기노 도오리니 하미다사나이요-니
오른쪽을 향하는 오른쪽 거리로 빠져나오지 않도록

揃えられた僕を取り残したままで加速する日々よ
소로에라레타 보쿠오 토리노코시타 마마데 카소쿠스루 히비요
줄세워진 나를 남겨둔 채로 가속하는 나날이여

どんな風に歩いていたっけ
돈나 후우니 아루이테이탓케
어떤 식으로 걷고있었더라

どんな僕が僕だったっけ
돈나 보쿠가 보쿠닷탓케
어떤 내가 나였더라

ずっと遠くに見ていた ずっと先の未来は
즛토 토오쿠니 미테이타 즛토 사키노 미라이와
아주 멀리서 바라보던 한참 뒤의 미래는

ずっと近くに来ていたずっとずっと
즛토 치카쿠니 키테이타 즛토 즛토
아주 가까이에 다가왔어, 계속, 계속

本当に大事なことはいつも(誰も)教えてくれない
혼토-니 다이지나 코토와 이츠모 (다레모) 오시에테쿠레나이
정말 중요한 것들은 언제나 (아무도) 가르쳐주지 않아

これからのこと肝心なとこ
코레카라노 코토 칸진나 토코
앞으로의 일이 가장 중요하단 점을

今も考えれば考えるほど 分からなくて
이마모 칸가에레바 칸가에루호도 와카라나쿠테
지금도 생각하면 생각할수록 모르겠어서

もっと格好良くもっと胸張って進めたら
못토 캇코-요쿠 못토 무네핫테 스스메타라
좀 더 멋있게, 좀 더 가슴을 펴고 나아갔다면

足がすくんでしまっても声が震えても お構いなし
아시가 스쿤데 시맛테모 코에가 후루에테모 오카마이나시
다리가 움츠러들어도, 목소리가 떨려도 상관 없이

心は置き去りのままで加速していくビート
코코로와 오키자리노 마마데 카소쿠시테이쿠 비-토
마음은 내버려둔 채로 가속하는 비트

張り裂けてしまいそうだ
하리사케테시마이소-다
찢어져 버릴것만 같아

喉につかえた「ごめんね」 揺れ動く指先
노도니 츠카에타 고멘네 유레우고쿠 유비사키
목에 걸린 "미안해", 흔들리는 손가락

いつも思えばこの胸の奥が痛いほど脈打つのは
이츠모 오모에바 코노 무네노 오쿠가 이타이호도 먀쿠우츠노와
언제나 생각하면 이 가슴 속이 아플 정도로 맥박이 뛰는것은

かけがえないものに 愛するべきものに 触れた瞬間ばかりだ
카케가에나이 모노니 아이스루베키 모노니 후레타 슌칸 바카리다
둘도 없는 것에, 사랑할 수 밖에 없는 것에 닿은 순간들 뿐이야

きっと飛び跳ねる心臓が鳴らした音は
킷토 토비하네루 신조-가 나라시타 오토와
분명 뛰어오르는 심장이 울린 소리는

僕にとって本当に大切なものを
보쿠니톳테 혼토-니 타이세츠나 모노오
나에게 있어 정말로 소중한 것을

教えてくれていたんだずっと いつだって
오시에테쿠레테이탄다 즛토 이츠닷테
알려주고있었어 계속, 언제나

誰かに貼られた「らしさ」は要らない
다레카니 하라레타 라시사와 이라나이
누군가가 붙여준 "나 다움"은 필요없어

どこまでも 響け僕のハートビート
도코마데모 히비케 보쿠노 하-토 비-토
어디까지고 울려라 나의 하트비트

誰でもない自分の証 誇らしく鳴らせ
다레데모 나이 지분노 아카시 호코라시쿠 나라세
그 누구도 아닌 나라는 증거, 자랑스럽게 울려라

張り裂けそうな心で鳴らせ
하리사케소-나 코코로데 나라세
터질 것 같은 마음으로 울려라

世界で一つの証
세카이데 히토츠노 아카시
세계에 하나뿐인 증거

ずっと遠くに見ていた ずっと先の未来は
즛토 토오쿠니 미테이타 즛토 사키노 미라이와
아주 멀리서 바라보던 한참 뒤의 미래는

ずっと近くに来ているずっとずっと
즛토 치카쿠니 키테이루 즛토 즛토
아주 가까이에 있어, 계속, 계속

ずっと前から僕がずっと探していたものは
즛토 마에카라 보쿠가 즛토 사가시테이타 모노와
한참 전부터 내가 계속 찾아왔던 것은

ずっと近くにあったんだずっとずっと
즛토 치카쿠니 앗탄다 즛토 즛토
아주 가까이에 있었어, 계속, 계속

これは始まりの合図だ
코레와 하지마리노 아이즈다
이건 시작을 알리는 신호야

그랜드 아레나 파티!

solved.ac Grand Arena #4(Div. 2)에 출전해 7문제 중 3문제를 풀어 오프라인 참가자 65명 중 29등을 기록했습니다. 스코어보드는 여기에서, 에디토리얼은 여기에서 확인할 수 있습니다.

오프라인 PS 대회 출전은 처음이었는데, 새로운 경험이 되었던 것 같습니다.

일찍 일어나는 새가 춥다

대회일 아침, 분명히 7시에 알람을 맞춰 놓았는데 제가 일어난 시각은 7시 50분이었습니다. 대충 준비하고 대회장으로 향했습니다. 10시 반부터 등록이었는데, 한 시간이나 일찍 도착해버렸습니다. 그런데 저보다 일찍 도착하신 분이 계셨습니다. toycartoon 님은 등록 시작 3시간 전인 7시 30분에 도착을 하셨다고 합니다.

대체 왜요

대회 시작까지는 아직 한참 남아서 문 앞에서 노가리를 까면서 기다리고 있으니 점점 사람들이 많아졌습니다. 뭔가... 다들 PS를 하게 생기신 분들이셨어요(이게 무슨 소리지).

10시 반에 대회장의 문이 열리고 등록을 시작했습니다. 바로 들어가서 등록을 마치고 많은 양의 기념품을 받고 들어가서 자리에 앉았습니다.

기념품을 엄청 많이 받았습니다. 행사장 한쪽에는 풍선이 있었는데, 이런 PS 대회에서는 문제를 맞힐 때마다 해당하는 색깔의 풍선을 달아주는 문화가 있다고 합니다. 저는 제 자리에 풍선이 하나도 달리지 않는 사태가 생길까봐 살짝 걱정했습니다.

비추어라, 그러면 보일 것이다

함께 퍼즐을 풀어봅시다!

12시 30분까지 퍼즐 헌트 이벤트를 하고 있었습니다. 페이지에 들어가면 열 개의 문제가 있는데, 뭔가 엄청 어려워 보였습니다. 등록을 하고 입장할 때 투명한 카드 같은 걸 줬는데, 같은 팀원들이 받은 것과 조합을 해 보니...

FIND OPERATIONS

글자가 나타났습니다. FIND OPERATIONS 라는 글자가 보였고, 이를 페이지에 입력하니 문제가 풀렸습니다. 뭔가 다른 문제들은 풀 엄두가 나지 않아 밥을 먹던 중, 여덟 번째 문제를 보고 있었습니다.

이게 뭔데요

' 마법, 별빛이 비추는 길을 따라 ' 라고 되어 있었습니다. 그런데 그림이 뭔가...

티켓.

처음 등록할 때 받았던 티켓과 비슷하게 생겼습니다...? 그래서 빛을 비추어 보았습니다.

WELCOME KIT

빛을 비추어야만 보이는 WELCOME KIT 글자가 있었습니다! 그래서 저는 이 문제를 맞히며 팀의 1솔에 기여했습니다[1]처음으로 맞힌 사람이었다고 썼었는데, 다시 살펴보니 아니었네요. 다른 문제하고 헷갈렸어요 :blobsad:.

퍼즐 부스.

진짜 퍼즐을 풀어야 답을 알 수 있는 문제도 있었는데, 저희 팀원이 어떻게 해서 퍼즐을 풀고 답을 맞혀버렸습니다.

이외에도 팀원들이 여러 문제를 맞혀서 6문제를 맞힌 시점에서 이벤트가 끝났습니다. 꽤나 재밌었던 이벤트였습니다.

실버에서 3솔 난다

Div.2에서 제가 유일한 실버였고, 나머지 분들은 모두 골드 이상이었습니다. 실버 대표로 출전한 느낌이었습니다(누가 대표 시켜준대...?). 대회가 시작되자마자 ABCDEFG를 모두 켜 놓고, A부터 문제를 보기 시작했습니다.

31403

A, AC / 3

이 대회는 문제가 난이도 순으로 정렬되어 있었습니다. 그렇다는 얘기는 A번 문제가 가장 쉽다는 얘기고, 실제로도 A번이 뭔가 풀기 쉽게 생겼었습니다. 지문은 짧을 수록 좋습니다(아마도요).

당연히 일반적인 사칙연산 문제는 아닌 것 같고, A+B-C인데 +는 문자열로 이어붙이고, -는 숫자로 보고 빼야 하는 문제였습니다.

그래서 간단하게 문자열과 수를 왔다갔다 할 수 있게 코드를 뚝딱뚝딱 만들었고, 시작 3분 만에 맞았습니다!!를 받았습니다.

31395

B, AC +3 / 64

무슨 부분수열이 나오고 그럽니다. 저는 수학이 싫어요... 그런데 이거, 뭔가 풀 수 있을 것 같습니다. 문제에 나오는 수열을 한 번만 돌면 답이 나올 것 같습니다. 그리고 그 예상은 적중했습니다. 인접한 두 수를 한 번씩만 비교하면 되는 것이었습니다. 그런데, 뭔가를 잘못 생각했는지 계속 틀렸습니다가 나오는 겁니다. 그래서 일단 포기하고 C번을 풀고 돌아왔는데, 진짜 잘못 생각한 무언가가 있었습니다.

i부터 j까지 연속된 길이 k에 대해서 \frac{k(k+1)}{2}였는데, 이걸 팩토리얼하고 착각을 해서 팩토리얼을 적어버린 겁니다. 난 바보야 그래서 바로 고쳤고, 맞았습니다!!를 받았습니다.

깡!

오늘의 교훈: 예제만 보지 말고 테케 몇 개를 더 넣어 보자

31404

C, AC / 52

뽜밤뽜밤-! 아리스는 메이드 용사로 전직했습니다!

저희 집에도 로봇 청소기를 하나 들이고 싶은데, 비싸요. 하여튼 이 로봇 청소기는 써 있는 대로 움직이기 때문에, 그대로 구현을 했습니다. 그리고 영역을 나갔는지 확인하는 코드도 넣어주고, 무한 루프의 가능성도 있기 때문에 먼지가 없는 곳을 99999번 청소하면 프로그램이 터지고 원래 나와야 할 값을 던지는 코드도 넣어줬습니다.

그랬더니 한번에 맞았습니다!!를 받았습니다. 나중에 스코어보드를 보니 이 문제를 11번 틀리고 맞히신 분도 계셨고, 28번을 틀리시고 결국 맞히지 못한 분도 계셨네요.

import sys
input = sys.stdin.readline
h, w = map(int, input().strip().split())
r, c, d = map(int, input().strip().split())
a = [list(map(int, list(input().strip()))) for _ in range(h)]
b = [list(map(int, list(input().strip()))) for _ in range(h)]
x = [[0] * w for _ in range(h)]
o = 0
p = 0
k = 0
while True:
    if x[r][c] == 0:
        x[r][c] = 1
        k = 0
        d += a[r][c]
    else:
        p = 2
        k += 1
        d += b[r][c]
    if d > 3:
        d = d % 4
    if d == 0:
        r -= 1
    elif d == 1:
        c += 1
    elif d == 2:
        r += 1
    else:
        c -= 1
    o += 1
    if r < 0 or r >= h or c < 0 or c >= w:
        if k != 0:
            o = o - k
        break
    if k > 99999:
        o = o - k
        break
print(o)

31406

E, 시도하지 못함

DFS로 풀 수 있는 문제인 걸로 보였습니다. 그런데 문제는, 제가 DFS를 배운 적이 없다는 겁니다. 그래서 빠르게 스킵했습니다.


저는 그렇게 3개의 문제를 풀었고, 시간이 너무 많이 남아서 이불탐색을 띄워 놓고 잤습니다.

이 불 탐 색

PS도 식후경

이후에 유저 컨퍼런스 세션과 스코어보드 공개, 시상식이 있었습니다. 그리고 저는 감사하게도 특별상을 받았습니다!

특별상 장패드.

그리고 이후에 hjroh0315, toycartoon, ruykun, hibye1217 님과 함께 치킨을 먹었습니다. 맛있었어요 :blobnom:

5명에 2치킨이라니

그러고 나서는 toycartoon 님과 같이 부천 어택에서 리듬게임을 하다가 집에 갔습니다.

받았던 팜레스트와 키캡을 장착해 보았습니다. 귀엽군요.

이번 대회의 레이팅은 온사이트와 미러를 합쳐서 계산이 되었습니다. 그래서 총 참가자 398명 중 67등으로, 퍼포먼스는 S+ 1920으로 판정이 되었고, 레이팅은 A+ 1444가 되었습니다. 이번 대회에서 그랜드 아레나 파티 배경아레나 상위 100위 뱃지를 얻었습니다.

그렇게 제 첫 대회는 즐겁게 끝나게 되었습니다. 참여하신 모든 분들과 스탭 분들 수고 많으셨습니다!

골드 길도 브론즈 5부터

Gold V

이 글을 작성하는 시점에 Gold V Gold V이 되었습니다! 🎉

각주

각주
1 처음으로 맞힌 사람이었다고 썼었는데, 다시 살펴보니 아니었네요. 다른 문제하고 헷갈렸어요 :blobsad: