7/31 물리학 1 기말을 끝으로 종강했다. 1학기에 물리학 1 드랍한 게 스노우볼이 너무 크게 굴러갔다.


7월의 내가 한 것

  • 계절학기 잘 마침 - 아마 물리학 1, 심리학개론 둘 다 잘 마친 것 같다
  • 시간표를 짬 - 고영영화 + 미적분학 2 + 선대 2 + 대글 1 + 고속 프로그래밍 방법 및 실습 + 컴공이산수학 + 위상신세 (18)
  • 과외 등 돈벌이를 함 - 2학기 로드가 빡세서 2학기에는 많이 못한다
  • 알고리즘 공부를 함 - PST, 2D BIT/Seg, Flow/Matching, SCC/2-SAT, Offline Dynamic Connectivity, FWHT/Subset Convolution 정도를 공부하고 연습문제도 최대한 풀었다
  • SCPC에서 사망함 - 예선 탈락할 줄은 상상도 못했는데 그렇게 됐다. 뇌절 on
  • BAPC 팀연습, UCPC 예선 - BAPC 팀연습은 막판에 정신 놓은 거 빼고 좋았고, UCPC 예선은 8등
  • 8월에 뭘 할지 계획을 열심히 세웠다 ㅋㅋ
  • 휴대폰이 갑자기 골로 가고, 노트북도 약간 손상이 있어서 고쳤다. 휴대폰 초기화됐다 ㅋㅋ ^^
  • 이렇게 보니까 한 거 진짜 없는 것 같다. 계절학기가 생각보다 시간을 잡아먹은 듯.


8월의 내가 해야할 것 - 완료한 것은 bold 처리

  • 과외 등 돈벌이 - 하긴 하지만, 그 양은 7월보다 적을 것 같다. 9월부터는 주말에만 주 1회 과외하거나 그럴 듯
  • Python 기초 학습 - 최소한 백준에 있는 구현 문제들은 바로 짤 수 있을 정도로 연습할 생각이다. 고속 프로그래밍 방법 및 실습을 제대로 듣기 위해서는 필요한 작업으로 보인다. 알고리즘하다가 머리 터지면 이거 할 생각 ㅇㅇ
  • 선형대수와 군 최대한 읽기 - 선대 1을 수강하지 않았으니, 선대 2를 들으려면 책을 좀 읽고 가야할 것 같다.
  • 알고리즘 공부하기 - 문제 최대한 많이 풀 생각. Mo's Algorithm, HLD 공부를 했다. (Convex Hull, KMP도 약간)
  • SNUPC 검수진 역할 충실하게 하기
  • 봉사 시간 채우기 - 대장금 계속지원 조건 충족. 큰 행사 하나에서 진행요원 역할을 하게 된다. 
  • 휴대폰 원래 상태로 복구하기 - 꽤 많은 자료가 날라갔지만, 노트북에 없고 중요한 자료는 없는 듯. 음악 CD에서 옮기고, 공인인증서 넣고, 음악 다운받고, 사진 자료도 몇 개 옮기면 끝날 것 같다. 새 폰 산 느낌이라 신기하다.
  • 블로그 업데이트 - 공부한 거나 연습한 거를 대충이라도 적어놔야 할 것 같다.


계속 드는 생각이지만 기숙사 붙으면 참 좋을 것 같다. 왕복 3시간 통학은 좀 아닌 듯 ㅇㅇ


UPD: 기숙사 붙었다. 공부 열심히 해야지.

UPD: UCPC에서 사람 구실 못했다. 에휴 ㅋㅋ

'미래 계획 및 근황' 카테고리의 다른 글

겨울방학 목표 정리  (4) 2019.11.29
대충 최근에 한 것 모음  (0) 2019.10.14
2019년 2학기 목표  (0) 2019.09.04
2018년 12월 ~ 2019년 2월 계획  (0) 2018.12.01
TEST 및 TODO  (2) 2018.09.28

MASTER 난이도 기준, 난이도별 정리 - 현재 146코인


ガヴリールドロップキック 12 - S - 997966

Aventyr 12 - S - 991171

Black Lair 12 - S - 975595

Eternal Drain 12 - S - 989338

Flower 12 - S - 986762

Her Majesty 12 - S - 994161

L9 12 - S - 993871

Sakura Fubiki 12 - S - 982429


Altale 12+ - S - 987540

Axium Crisis 12+ - SS - 1000515

Say A Vengeance 12+ - S - 990312

The Formula 12+ - S - 994168


極圏 13 - S - 980015

管弦楽組曲 第3番 ニ長調「第2曲(G線上のアリア)」BWV.1068-2 13 - AAA - 958135

Air 13 - S - 983001

Aragami 13 - S - 983175

Avalon 13 - S - 978190

Blythe 13 - S - 985965

Brain Power 13 - S - 982305

conflict 13 - S - 985404

CO5M1C R4ILR0AD 13 - S - 992789

DataErr0r 13 - S - 984538

Dragonlady 13 - S - 990737

Dreadnought 13 - S - 977304

Elemental Creation 13 - S - 980222

Evans 13 - S - 976841

Gengaozo 13 - AAA - 966676

Gerbera 13 - S - 996115

Goodtek 13 - S - 986899

Halcyon 13 - S - 987541

Imperishable Night 2006 (2016 Refine) 13 - S - 978105

Jack-the-Ripper 13 - S - 977385

Nhelv 13 - S - 985944

Oshama Scramble (Cranky Remix) 13 - S - 980633

Parousia 13 - S - 983099

Phantasm Brigade 13 - S - 985444

PUPA 13 - AAA - 963139

Scarlet Lance 13 - AAA - 958279

Strahv 13 - S - 978116

Vallista 13 - S - 982058

volcanic 13 - S - 985541


エンドマークに希望と涙を添えて 13+ - AAA - 957553

Amazing Mighty 13+ - AAA - 954229

Angel Dust 13+ - AAA - 970498

Calamity Fortune 13+ - S - 979243

Dengeki Tube 13+ - S - 978334

Doppelganger 13+ - S - 980989

End time 13+ - S - 985425

Finite 13+ - S - 979803

Fracture Ray 13+ - S - 999853

Freedom Dive 13+ - S - 975414

Glorious Crown (tpz Remix) 13+ - S - 983003

Grievous Lady 13+ - AAA - 952718

Haelequin 13+ - AAA - 964920

Kamui 13+ - AAA - 964115

Larva 13+ - S - 979746

LittlE HearTs 13+ - S - 975747

Ouroboros 13+ - AAA - 972072

Schrecklicher Aufstand 13+ - AAA - 950277

Vertex 13+ - AAA - 966630

Xevel 13+ - AAA - 952077


ikazuchi 14 - AAA - 956090

'취미' 카테고리의 다른 글

CALL ME IF YOU GET LOST  (0) 2021.07.29
공부를 2주동안 하지 않은 이야기  (0) 2020.07.18
Squarepusher - Beep Street  (0) 2019.11.27
2019/11/16 ~ 2019/11/17 CHUNITHM 성과 정리  (0) 2019.11.17

문제 (문제 링크)


\(a, b, c\)가 \(abc=1\)을 만족하는 양의 실수라면, 다음 부등식이 성립함을 보여라. $$ (a+1)^b \cdot (b+1)^c \cdot (c+1)^a \ge 8 $$


스포 방지선

___________________________________________________________________________________________________________














__________________________________________________________________________________________________________


풀이 (2015/10/17 - 3년 반 전에 푼 문제인데 어떻게 풀었는지 모르겠다)


먼저 \(a, b, c\)를 \( \displaystyle \frac{1}{a}, \frac{1}{b}, \frac{1}{c}\)로 바꿔치자. 이렇게 해도 문제가 되지 않는다는 것을 쉽게 알 수 있다.

이제 목표는 \(abc=1\)인 양의 실수 \(a,b,c\)에 대해 \(\displaystyle \left(1+\frac{1}{a}\right)^{1/b} \cdot \left(1+\frac{1}{b} \right)^{1/c} \cdot \left(1+\frac{1}{c} \right)^{1/a} \ge 8\)을 보이는 것이다.

자연로그를 취하면, \(\displaystyle \frac{1}{b} \ln \left(1+\frac{1}{a}\right) + \frac{1}{c} \ln \left(1+\frac{1}{b}\right) + \frac{1}{a} \ln \left(1+\frac{1}{c} \right) \ge 3 \ln 2\)를 보이면 충분하다.


한편, 모든 \(x > 0\)에 대하여 \(\displaystyle \ln \left(1+\frac{1}{x} \right) = \ln (x+1) - \ln (x) = \int_x^{x+1} \frac{1}{t} dt = \int_0^1 \frac{1}{x+t} dt \)이므로, 이제 $$ \int_0^1 \left( \frac{1}{b} \cdot \frac{1}{a+t} + \frac{1}{c}  \cdot \frac{1}{b+t} + \frac{1}{a} \cdot \frac{1}{c+t} \right) dt \ge 3 \ln 2 $$를 보이면 충분하다.


이제 \(abc=1\)이므로, 양의 실수 \(x,y,z\)에 대해 \(\displaystyle a=\frac{x}{y}, b=\frac{y}{z}, c=\frac{z}{x}\)라 쓸 수 있다. 대입하면 우리는 $$ \int_0^1 \left( \frac{z}{yt+x} + \frac{x}{zt+y} + \frac{y}{xt+z} \right) \ge 3\ln2$$를 보이면 충분하다. 한편, 전형적인 Cauchy-Schwarz 부등식에 의해서 $$ \frac{z}{yt+x} + \frac{x}{zt+y} + \frac{y}{xt+z} = \frac{z^2}{yzt+zx} + \frac{x^2}{zxt+xy} + \frac{y^2}{xyt+yz} \ge \frac{(x+y+z)^2}{(xy+yz+zx)(t+1)} $$이므로, 두 함수 \(f(t), g(t)\)가 \(f(t) \ge g(t) \text{ } \forall t \in [0,1]\)를 만족하면 \(\displaystyle \int_0^1 f(t) dt \ge \int_0^1 g(t) dt\)가 성립한다는 사실에서 $$ \int_0^1 \left( \frac{z}{yt+x} + \frac{x}{zt+y} + \frac{y}{xt+z} \right) dt \ge \int_0^1 \frac{(x+y+z)^2}{(xy+yz+zx)(t+1)} dt \ge \int_0^1 \frac{3}{t+1} dt = 3 \ln 2 $$를 얻을 수 있다. 여기에서는 \((x+y+z)^2 \ge 3(xy+yz+zx)\)라는 잘 알려진 부등식을 사용하였다.

등호가 성립하려면 \((x+y+z)^2=3(xy+yz+zx)\)이어야 하고, 이는 \(x=y=z\), 즉 \(a=b=c=1\)을 뜻한다.


문제


주어진 자연수 \(k\)에 대하여, $$ \binom{n}{0}, \quad \binom{n}{1}, \quad \cdots \quad \binom{n}{n-1},  \quad \binom{n}{n}$$ 중 \(0.99n\)개 이상의 자연수가 \(k\)의 배수라면 자연수 \(n\)을 좋은 수라고 하자. 

\(1, 2, \cdots N\) 중 좋은 수의 개수가 \(0.99N\)개 이상인 자연수 \(N\)이 존재함을 보여라.


스포 방지선

_____________________________________________________________________________________________________















______________________________________________________________________________________________________


푸는 것만큼 서술이 참 어려운 문제인 것 같다. 문제를 확장하여, \(0<C, D<1\)에 대하여 다음을 보일 것이다.

[새로운 명제]

주어진 자연수 \(k\)에 대하여, $$ \binom{n}{0}, \quad \binom{n}{1}, \quad \cdots \quad \binom{n}{n-1},  \quad \binom{n}{n}$$ 중 \(Cn\)개 이상의 자연수가 \(k\)의 배수라면 자연수 \(n\)을 \(C\)-좋은 수라고 하자. 

충분히 큰 자연수 \(N\)에 대하여, \(1, 2, \cdots N\) 중 \(C\)-좋은 수의 개수가 \(DN\)개 이상이다. 


\(a_n\)을 \(0 \le v \le u < n\)과 \(\binom{u}{v} \equiv 0 \pmod k\)를 만족하는 정수 순서쌍 \((u,v)\)의 개수라 하자.

\(b_n\)을 \(0 \le v \le u < n\)을 만족하는 정수 순서쌍 \((u,v)\)의 개수, 즉 \(\binom{n+1}{2}\)라 하자.

일단 \(k\)가 prime power인 경우에 대해서 먼저 다룬다. \(k=p^e\)라 하자. 


Claim 1. 모든 양의 실수 \(\epsilon>0\)에 대하여, 적당한 자연수 \(N\)이 존재하여 모든 \(n>N\)에 대해 \(\frac{a_{p^n}}{b_{p^n}} > 1-\epsilon \)가 성립한다. 


Proof of Claim 1. Kummer's Theorem에 의해, \(\binom{u}{v}\)가 가지는 \(p\)의 개수는 \(p\)진법에서 \(v+(u-v)=u\)를 덧셈할 때 발생하는 자리 올림의 횟수가 된다. 이러한 자리올림은 최소한 "\(u\)의 digit이 \(v\)의 digit보다 작은 횟수"만큼 발생한다. 

이제부터 \(u, v\)는 leading zero까지 생각하여 \(p\)진법에서 \(n\)자리 수로 본다. 


이에 기반하여 \(b_{p^n}-a_{p^n}\)을 bound 하자. \(0 \le v \le u < p^n\)를 만족하고 "\(u\)의 digit이 \(v\)의 digit보다 작은 횟수"가 \(e\)번 이하인 정수 순서쌍 \((u,v)\)의 개수를 세면, 이는 \(b_{p^n}-a_{p^n}\)의 upper bound 역할을 할 수 있게 된다. 


\(u\)와 \(v\)가 같은 경우는 \(p^n\)개가 있다. \(u\)와 \(v\)가 다른 경우는 첫 \(s\)개의 digit이 같다고 두고 \(u\)의 \(s+1\)번째 digit이 \(v\)의 \(s+1\)번째 digit보다 크다고 하자. \(s\)에 따라 경우를 나누고, 또 "\(u\)의 digit이 \(v\)의 digit보다 작은 횟수"로 경우를 나누어보자.


우선 첫 \(s\)개의 자리를 결정하는 방법은 최대 \(p^s\)개이고, \(s+1\)번째 digit을 결정하는 방법은 최대 \(\binom{p}{2}\)개이다. 

만약 "\(u\)의 digit이 \(v\)의 digit보다 작은 횟수"가 \(i\)번이라면, \(s+2\)번째부터 \(n\)번째 자리를 결정하는 방법의 수는 최대 $$ \binom{n-s-1}{i} \cdot \binom{p}{2}^i \cdot \binom{p+1}{2}^{n-s-1-i} $$개다. 이를 모두 종합하면, \(b_{p^n}-a_{p^n}\)은 최대 $$ p^n + \sum_{s=0}^{n-1} p^s \binom{p}{2} \sum_{i=0}^e \binom{n-s-1}{i} \cdot \binom{p}{2}^i \cdot \binom{p+1}{2}^{n-s-1-i} $$이다.


\(b_{p^n} \ge \frac{1}{2}p^{2n}\)이므로 이제 목표는 임의의 \(\epsilon>0\)에 대하여, 충분히 큰 \(n\)에 대해서는 저 식이 \(\epsilon \cdot p^{2n}\) 이하임을 보이는 것이다.

시그마 안에 있는 값들부터 천천히 bound하면서, 식 전체에 대한 bound를 잡아보자. 

먼저 간단한 부등식인 \(\binom{n-s-1}{i} \le n^i\), \(\binom{p}{2} \le \binom{p+1}{2}\)을 쓰면, $$ \binom{n-s-1}{i} \cdot \binom{p}{2}^i \cdot \binom{p+1}{2}^{n-s-1-i} < \binom{n-s-1}{i} \cdot \binom{p+1}{2}^{n-s-1} < n^i \cdot p^{2n-2s-2} \cdot \left(\frac{p+1}{2p}\right)^{n-s-1} $$를 얻는다. 그러면 \(b_{p^n}-a_{p^n}\)은 최대 $$ p^n + \sum_{s=0}^{n-1} p^s \binom{p}{2} \cdot p^{2n-2s-2} \cdot \left(\frac{p+1}{2p}\right)^{n-s-1} \cdot \sum_{i=0}^e n^i < p^n + \sum_{s=0}^{n-1} p^{2n-s} \cdot \left(\frac{p+1}{2p}\right)^{n-s-1} \cdot n^{e+1}$$이다. 이제 등비수열의 합에 의하여, $$ \sum_{s=0}^{n-1} p^{2n-s} \cdot \left(\frac{p+1}{2p}\right)^{n-s-1} = \frac{2p}{p+1} \cdot p^{2n} \cdot \left(\frac{p+1}{2p}\right)^n \cdot \sum_{s=0}^{n-1} \left(\frac{p+1}{2}\right)^{-s} < \frac{2p}{p+1} \cdot p^{2n} \cdot \left(\frac{p+1}{2p}\right)^n \cdot \frac{p+1}{p-1}$$이며, 이를 다시 위 식에 대입하고 정리하면 $$b_{p^n}-a_{p^n} \le p^n + n^{e+1} \cdot \frac{2p}{p-1} \cdot \left(\frac{p+1}{2p}\right)^n \cdot p^{2n} $$을 얻는다. \(n\)이 커짐에 따라 \(n^{e+1} \cdot \left(\frac{p+1}{2p}\right)^n\)은 \(0\)으로 수렴하므로, 적당한 \(\epsilon-\delta\) 논법을 끼얹으면 Claim 1의 증명이 끝난다.


Claim 2. 모든 양의 실수 \(\epsilon>0\)에 대하여, 적당한 자연수 \(N\)이 존재하여 모든 \(n>N\)에 대해 \(\frac{a_n}{b_n} > 1-\epsilon \)가 성립한다.


Proof of Claim 2. \(\epsilon>0\)을 고정하자. Claim 1에 의해, \(n>N\)이면 \(\frac{a_{p^n}}{b_{p^n}} > 1-\frac{1}{p^9}\epsilon \)이 성립하는 \(N\)이 존재한다. 

이제 \(n>p^{N+9}\)이라 하자. \(p^L \le n < p^{L+1}\)인 \(L\)을 잡으면 \(L>N\)이다.

정의상 \(b_n-a_n\), \(a_n\), \(b_n\)은 모두 단조증가하는 수열이므로, \(b_n-a_n \le b_{p^{L+1}}-a_{p^{L+1}} \le b_{p^{L+1}} \cdot \frac{1}{p^9} \epsilon \)이다. 

그러므로 \(\frac{a_n}{b_n} = 1-\frac{b_n-a_n}{b_n} \ge 1-\frac{b_{p^{L+1}}}{b_n} \cdot \frac{1}{p^9} \cdot \epsilon \ge 1-\frac{b_{p^{L+1}}}{b_{p^L}} \cdot \frac{1}{p^9} \cdot \epsilon > 1-\epsilon\)이 성립한다. 


Claim 3. \(k=p^e\)인 경우, [새로운 명제]가 참이다. 


Proof of Claim 3. 귀류법으로 [새로운 명제]가 거짓이라고 하자. 

각 \(i\)에 대하여, \(0 \le j \le i\) 중 \(\binom{i}{j}\)가 \(k\)의 배수인 것의 개수를 \(c_i\)라 하고, \(rat_i = \frac{c_i}{i+1}\)이라 하자. \(rat_0=0\)이다.

귀류법 가정에서 임의의 자연수 \(N\)에 대해 \(n>N\)인 \(n\)이 있어 \(1 \le i \le n\) 중 \(rat_i \ge C\)인 것은 최대 \(Dn\)개다.  

이 상황에서 \(a_{n+1} = \sum_{i=1}^{n} rat_i (i+1) \)을 bound해보자. 그렇다면, 다음 두 가지 관찰을 통해 bound를 구할 수 있다. 


관찰 1: \(rat_i\)가 \(C\) 이상이라면, 편하게 \(rat_i\) 대신 \(1\)이라고 두자. \(rat_i\)가 \(C\) 미만이라면, 마찬가지로 \(rat_i\) 대신 \(C\)라고 두자. 

관찰 2: 이제 문제는 \(rat_i\)는 \(C\) 또는 \(1\)이고, \(1\)인 index가 최대 \(Dn\)개다. 이런 구조에서는 재배열 부등식을 사용할 수 있다. 


이 관찰을 통해서, \(a_{n+1}\)의 bound를 구하기 위해 \(C\)를 작은 \(i\)에 몰아주고, \(1\)을 큰 \(i\)에 몰아준다. 계산하면 $$ a_{n+1} \le \sum_{i=1}^{n-\lfloor Dn \rfloor} C(i+1) + \sum_{i=n+1-\lfloor Dn \rfloor}^{n} (i+1)  = b_{n+1} - (1-C) \sum_{i=1}^{n-\lfloor Dn \rfloor} (i+1) \le b_{n+1} - (1-C) \cdot \binom{n+1-\lfloor Dn \rfloor}{2} $$를 얻는다. 하지만 이는 Claim 2에 모순임을 쉽게 알 수 있다. $$ b_{n+1} - a_{n+1} \ge (1-C) \cdot \binom{n+1-\lfloor Dn \rfloor}{2} \sim (1-C)(1-D)^2 \cdot  \frac{n^2}{2} \sim (1-C)(1-D)^2 \cdot b_{n+1}$$이므로, 아주 작은 \(\epsilon\)을 잡고 Claim 2를 쓰면 \(n\)의 upper bound를 얻을 수 있고, 즉 모순을 얻을 수 있기 때문이다. 


Claim 4. \(\text{gcd}(a,b)=1\)인 두 자연수 \(a, b\)에 대해 \(k=a, b\)인 경우 [새로운 명제]가 참이면, \(k=ab\)인 경우에도 참이다. 


Proof of Claim 4. \(C'=\frac{1+C}{2}\), \(D'=\frac{1+D}{2}\)라 하자. \(0<C', D'<1\)이다.

가정에 의해서, \(k=a\)라면 자연수 \(N_1\)이 존재하여, 모든 \(n>N_1\)에 대해 \(0, 1, \cdots n\) 중 \(C'\)-좋은 수가 \(D'n\)개 이상이다. 

가정에 의해서, \(k=b\)라면 자연수 \(N_2\)이 존재하여, 모든 \(n>N_2\)에 대해 \(0, 1, \cdots n\) 중 \(C'\)-좋은 수가 \(D'n\)개 이상이다. 

\(N=\text{max}(N_1, N_2)\)라 하자. 이제 \(n>N\)이라 해보자. 

\(0, 1, \cdots n\) 중 \(k=a\)에 대해 \(C'\)-좋은 수의 집합을 \(G_1\), \(k=b\)에 대해 \(C'\)-좋은 수의 집합을 \(G_2\)라 하자. 

\(|G_1| \ge D'n\), \(|G_2| \ge D'n\)이고 \(|G_1 \cup G_2| \le n\)이므로 \(|G_1 \cap G_2| \ge Dn\)이다. 

한편, \( t \in G_1 \cap G_2\)라 하고 \(\binom{t}{0}, \binom{t}{1}, \cdots , \binom{t}{t}\) 중 \(a\)의 배수의 집합을 \(S_1\), \(b\)의 배수의 집합을 \(S_2\)라 하면 \(|S_1| \ge C'(t+1)\), \(|S_2| \ge C'(t+1)\), \(|S_1 \cup S_2| \le t+1\)이니 \(|S_1 \cap S_2| \ge C(t+1)\)다. 

여기서 \(2C'-1=C\), \(2D'-1=D\)과 \(|A|+|B|=|A \cup B|+|A \cap B|\)를 사용하였다. 

그런데 \(|S_1 \cap S_2|\)는 \(ab\)의 배수의 개수다. 즉, \(t\)는 \(k=ab\)에 대한 \(C\)-좋은 수다. 증명 끝.


이제 Claim 3과 Claim 4에 의해서, 모든 \(k \ge 2\)에 대한 증명이 끝난다. \(k=1\)은 자명하니 증명 끝. 



문제


자연수 \(n\)에 대하여, \(\mathbb{Z}/n\mathbb{Z}\)는 정수의 집합을 modulo \(n\)으로 본 것이다. 

다음을 만족하는 함수 \(g: \mathbb{Z}/n\mathbb{Z} \rightarrow \mathbb{Z}/n\mathbb{Z}\)가 존재하는 자연수 \(n\)을 모두 구하시오. $$ g(x), \quad g(x) + x, \quad g(x) + 2x, \quad \dots, \quad g(x) + 100x $$가 모두 \(\mathbb{Z}/n\mathbb{Z}\)위의 일대일대응 함수이다. 


스포 방지선

_________________________________________________________________________________________________________
















___________________________________________________________________________________________________________

답은 \(101!\)과 서로소인 모든 자연수들이다. \(\text{gcd}(n,101!)=1\)이라면 \(g(x)=x\)가 조건을 만족한다.

이제 \(\text{gcd}(n,101!)\neq1\)이라고 생각하자. \(n\)의 최소 소인수를 \(p\)라 하면, \(p \le 101\)이다.


각 \(0 \le k \le p-1\)에 대해서, \(k \le p-1 \le 100\)임을 상기하면 $$ \sum_{x} g(x)^k \equiv \sum_{x} (g(x)+x)^k \equiv \sum_{x} (g(x)+2x)^k \equiv \cdots \equiv \sum_{x}(g(x)+kx)^k \equiv \sum_{i=0}^{n-1} i^k \pmod{n}$$이다. 각 식에서 더하고 있는 term들에 대한 \(k\)차 차분을 취하면,  $$ \sum_{x} k!x^k \equiv 0 \pmod{n}$$을 얻는다. 한편, \(p\)는 \(n\)의 최소 소인수이므로 \(\text{gcd}(k!,n)=1\)이다. 그러니 $$ \sum_{x} x^k \equiv 0 \pmod{n}$$을 얻는다. 그러므로 $$ 0 \equiv \sum_{x=1}^n (x-1)\cdots (x-(p-1)) \equiv (p-1)! \sum_{x=1}^n \binom{x-1}{p-1} \equiv (p-1)! \binom{n}{p} \pmod{n} $$를 얻을 수 있고, 이는 \(n| \binom{n}{p}\)를 얻는다. 이는 \(p \nmid n\)을 강제하고, 모순이다. 

문제


\(K\)는 십진법 표현에서 \(7\)을 포함하지 않는 자연수의 집합이다. 

다음 조건을 만족하는 모든 계수가 음이 아닌 정수인 다항식 \(f\)를 모두 찾아라. $$ n \in K \implies f(n) \in K $$

스포 방지선

________________________________________________________________________________________________________
















_________________________________________________________________________________________________________


꽤 재밌는 문제다. 먼저 문제를 단항식으로 압축해준다.


Claim: \(f(x) = \sum_{i=0}^n a_i x^i\)가 조건을 만족하면, 각각의 \(a_i x^i\)도 조건을 만족한다.

증명은 간단하다. 모든 \(x \in K\)에 대해 \(\sum_{i=0}^n a_i x^i \in K\)라면, 모든 자연수 \(N\)에 대하여 \(\sum_{i=0}^n a_i (10^Nx)^i  = \sum_{i=0}^n a_ix^i \cdot 10^{Ni} \in K\)이다. 이는 \(10^Nx \in K\)이기 때문.

\(N\)을 매우 크게 잡으면 \(a_ix^i\)가 그대로 십진법 표현에 나오고, 결국 \(x \in K \implies a_i x^i \in K\)를 얻는다.  


이제 단항식을 보자. 먼저 1차식에 대한 논의를 진행한다.


Claim: \(f(x)=cx\)가 조건을 만족한다면, \(c\)는 \(10^e\) 형태로 쓸 수 있는 자연수다. 

\(c \neq 10^e\)라면, 적당한 \(x \in K\)가 있어서 \(cx \not\in K\)임을 보이면 된다. 

실제로는 \(cx\)의 첫 번째 자릿수가 \(7\)이 되도록 할 수 있다. \(c\)의 범위를 세세하게 나누고, 각 경우에서 \(x\)를 대응시켜주자. 


이제 2차 이상의 단항식을 보자. 모두 불가능함을 보여주자.


Claim: \(f(x)=cx^k\)는 \(k \ge 2\)라면 조건을 만족할 수 없다.

\(x \in K\)를 잡고 \(f(10x+3)\)을 생각하자. \(10x+3 \in K\)이므로, $$f(10x+3)=c(10x+3)^k = c \cdot 3^k + c \cdot 10 \cdot k \cdot 3^{k-1} x + \cdots $$는 \(K\)에 속한다. 앞선 Claim에서 \(10ck3^{k-1}x\)는 조건을 만족시키는 단항식이고, 이는 위 Claim에 의해 \(10ck3^{k-1}\)이 \(10^e\) 형태의 자연수임을 의미한다. 하지만 \(k \ge 2\)면 \(10ck3^{k-1} \equiv 0 \pmod{3}\)이므로 이는 불가능하다. 


결국 답은 \(f(x)=10^e x\), \(f(x)=k\) (단, \(k \in K\)), \(f(x)=10^ex + k\) (단, \(10^e > k, k \in K\)) 뿐임을 알 수 있다. 



문제

임의의 주어진 양의 실수 \(\epsilon\)에 대하여, 모든 충분히 큰 \(v\)에 대하여 다음이 성립함을 보여라.

\(v\)개의 정점을 가진 그래프가 \((1+\epsilon)v\)개 이상의 간선을 가진다면, 같은 길이를 가지는 두 distinct simple cycle을 갖는다.  



스포 방지선

__________________________________________________________________________________________________________















___________________________________________________________________________________________________________


아는 풀이만 3개다. 각자 다른 맛을 가지고 있으니 다 읽어보자.


풀이 1. (Probabilistic)

서로 다른 simple cycle of equal length가 없는 그래프에 대해서 \(|E|\)를 bound시키면 된다. 

간선들의 집합 \(B\)를 뽑았다고 가정하고, \(B\)에 속한 간선들을 삭제하자. 만약 남은 cycle의 개수가 \(f(B)\)개라면, \(|B|+f(B)\)개의 간선을 삭제하여 cycle-free 그래프를 만들 수 있고, 그러면 \(|E| \le |V|+|B|+f(B)\)를 얻는다. 

문제는 적당한 \(B\)를 뽑는 것이다. Probabilistic한 방법이 이런 경우에 도움이 될 수 있다. 

\(B\)를 뽑기 위해서, 각 간선이 추가될 확률을 \(\frac{1}{\sqrt{|E|}}\)로 고정하자. 각 간선의 선택 여부는 독립적이다.

기댓값의 선형성에 의해 \(E\left(|B|+f(B)\right) = E(|B|)+E(f(B))\)이다. \(E(|B|)=\sqrt{|E|}\)는 자명하다. 

각 cycle이 \(B\)에서 속한 간선을 모두 제거했을 때에도 살아남은 조건은 그 cycle에 속한 모든 간선이 \(B^C\)에 속할 경우이다. 

각 길이를 가지는 cycle은 최대 하나이므로, 결국 \(\displaystyle E(f(B)) \le \sum_{k=3}^\infty \left(1-\frac{1}{\sqrt{|E|}} \right)^k \le \sqrt{|E|}-1\)이다. 

종합하면 \(E \left(|B|+f(B)\right) \le 2\sqrt{|E|}-1\)이다. 그러니 \(|B|+f(B) \le 2\sqrt{|E|}-1\)인 집합 \(B\)가 있다.

이 \(B\)를 통해서, \(|E| \le |V|+2\sqrt{|E|}-1\)를 얻을 수 있고 정리하면 \(|E| \le |V|+2\sqrt{|V|}+1\)를 얻는다.

이제 증명을 마무리시키는 것은 어렵지 않다. 증명 끝. 


풀이 2. (Algorithmic #1)

이 풀이에서는 \(f(B)=0\)을 만족하는 크기가 작은 \(B\)를 더욱 explicit하게 construct한다. 

먼저, 주어진 그래프에서는 최소 \(|E|-|V|\)개의 cycle이 존재하고, 그 길이는 서로 다르므로 \(|E|-|V| \le |V|\)다.

이제 \(B\)를 greedy하게 construct하자. 각 간선 중 가장 많은 cycle에 존재하는 간선을 하나 선택하고, 그 간선을 삭제하는 것을 반복한다. 이 알고리즘이 최대 \(10\sqrt{|V|}\)번의 삭제를 함을 보이자. 즉, \(|B| \le 10\sqrt{|V|}\)를 보이자.

현재 \(x\)개의 cycle이 있다면, 그 길이의 합은 최소 \(\sum_{i=1}^x (i+2) > \frac{1}{2}x^2\)이다.

그러므로, 더블카운팅 느낌으로 생각하면 \(\frac{x^2}{2|E|} \ge \frac{x^2}{4|V|}\)개 이상의 cycle에 존재하는 간선이 있다. 

즉, 한 번 간선을 삭제할 때마다 최소 \(\text{min}(\frac{x^2}{4|V|},1)\)개의 cycle이 삭제된다. 물론 처음에 \(x \le |V|\)이다. 

이제 이 문제는 대수문제다. 알고리즘을 진행하면서, cycle의 개수가 \([k\sqrt{|V|}, (k+1)\sqrt{|V|})\)에 속한 횟수를 \(c_k\)라 하자. 

\(k \ge 1\)이면 \(c_k \le \frac{\sqrt{|V|}}{k^2/4}+1 = \frac{4 \sqrt{|V|}}{k^2}+1\)이고, \(c_0 \le \sqrt{|V|}+1\)이다. (cycle의 개수가 최소 \(\frac{k^2}{4}\) 또는 1개씩 감소)

가능한 \(k\)의 범위는 \(1 \le k \le \lfloor \sqrt{|V|} \rfloor\)이므로, 전체 삭제 횟수는 $$ -1+\sum_{k=0}^{\lfloor \sqrt{|V|}\rfloor} c_k  \le \sqrt{|V|} + \sum_{k=1}^{\lfloor \sqrt{|V|} \rfloor} \left( \frac{4\sqrt{|V|}}{k^2} + 1 \right) \le 2\sqrt{|V|} + 4 \sum_{k=1}^\infty \frac{\sqrt{|V|}}{k^2} \le 10 \sqrt{|V|} $$다. 이제 풀이 1과 똑같은 방법으로 마무리할 수 있다. 증명 끝.


풀이 3. (Algorithmic #2)

접근 방법이 많이 다른 풀이다. 앞서 cycle의 길이가 최대 \(|V|\)인 것을 활용하여 \(|E|-|V| \le |V|\)임을 유도했다. 

만약 그래프의 일부 간선을 삭제하여 diameter가 작은 그래프 여러 개로 분할하면, 그 그래프들에서 나올 수 있는 cycle의 길이는 더욱 tight하게 bound된다. 특정 길이를 가지는 cycle이 최대 하나이므로, 여기서 쪼개진 그래프들이 가질 수 있는 간선의 개수를 bound시킬 수 있을 것이다. 문제는 어떻게 적은 수의 간선을 제거해 diameter가 작은 그래프를 만드냐는 것이다. 


Theorem. (Low Diameter Decomposition) 

\(N\)개의 정점과 \(M\)개의 간선을 가지는 그래프 \(G\)가 있다고 가정하자. 

\(\delta M\)개의 간선을 삭제하여, 남은 connected component의 diameter가 전부 \(\mathcal{O}(\delta^{-1} \log N)\)이도록 할 수 있다. 


(증명) 다음 알고리즘을 반복한다. 

정점 \(v\)를 고정하고, \(B_r\)을 \(\text{dist}_G(v,w) \le r\)인 정점 \(w\)의 집합이라 한다.

또한, \(E(B_r)\)을 \(B_r\) 내부에 존재하는 간선의 개수라고 정의한다. 

\(E(B_r) \le (1+\delta)E(B_{r-1})\)을 만족하는 최소의 \(r\)을 선택한다. 

만약 모든 \(1 \le t \le R\)에 대하여 \(E(B_t) > (1+\delta)E(B_{t-1})\)이 성립한다면, $$ M \ge E(B_R) > (1+\delta)^{R-1} E(B_1) \ge (1+\delta)^{R-1} $$이므로 \(R \le 1+\frac{\log M}{\log (1+\delta)}\)이다. 즉, 최소의 \(r\)은 최대 \(1+\frac{\log M}{\log (1+\delta)} = \mathcal{O}(\delta^{-1} \log N)\)이다. 

이제 \(E(B_r)-E(B_{r-1})\)개의 간선을 삭제하여 \(B_{r-1}\)을 새로운 connected component로 받아들인다.

이를 계속해서 반복한다. 각 stage에서 삭제되는 간선은 최대 \(\delta E(B_{r-1})\)개이다. 

\(B_{r-1}\)은 서로 disjoint한 집합들이므로, 이들의 합은 최대 \(\delta M\)이다. 증명 끝. 


적당히 작은 \(\epsilon\)에 대해서만 생각해도 좋다. 

\(\delta = \frac{\epsilon}{2}\)라 하고 위 알고리즘을 적용하자. 삭제된 간선은 최대 \( \frac{\epsilon}{2} (1+\epsilon)v < \frac{2}{3} \epsilon v\)개다. 

그 후, 각 connected component의 spanning tree를 하나씩 잡아주자. 

그러면 삭제되지도 않았고, spanning tree에도 포함되지 않은 간선은 최소 \(\frac{1}{3}\epsilon v\)개다.

이러한 간선들은 해당 connected component에서 cycle을 만들어주며, 그 길이는 최대 \(\mathcal{O}(\epsilon^{-1} \log v)\)이다. 

cycle의 개수는 최소 \(\frac{1}{3}\epsilon v\)개다. \(\frac{1}{3} \epsilon v >> \epsilon^{-1} \log v\)라면, 비둘기집의 원리에서 같은 길이를 가진 cycle이 생긴다. 

\(v\)가 충분히 큰 값을 가지면, 위 부등식이 성립하게 된다. 증명 끝. 이 방식은 \(v+\mathcal{O}(\sqrt{v \log v})\) 정도의 bound를 준다.


cf. 참고로 풀이 1, 2에서 얻은 \(v+\mathcal{O}(\sqrt{v})\)의 bound는 tight하다. 

길이가 \(3,4, \cdots n\)인 cycle을 준비한 뒤, 하나의 chain으로 붙여주면 된다.