chess.com의 프리미엄을 구매했습니다. 앞으로 좀 더 체스를 많이 둘 것 같습니다.

 

인상적인 오프닝이나 경기 복기들을 좀 해 볼것 같습니다.

 

 

HYEALEE vs. richardpinales (15수 부터 변형)

 

 

여기서 흑이 Nxh5를 두면 메이트를 당하게 됩니다. 비숍 두개와 퀸이 킹을 위협하고 있어서 큰 손해를 보게 됩니다.

 

1... Nxh5 2. Qxh5+ Kf8 3. Be6 Rh7 4. Bxh6+ Ke7 5. Bg5+ Bf6 6. Qxh7+ Kxe6 7. Qg8+ Kd7 8. Bxf6 Na6 9. Qxa8 c5 10. Qd8+ Kc6 11. Qe8+ Kc7 12. Qxb5 Kb8 13. Qb6 Ka8 14. Qxd6 c4 15. Qd8+ Ka7 16. Bd4+ Nc5 17. Bxc5+ b6 18. Qc7+ Ka6 19. Qxb6#

 

한국에서 PS를 공부하기 위한 방법은 여러가지가 있습니다. 크게 나누어서 돈을 많이 쓰는 방법과, 그렇지 않은 방법이 있다고 생각합니다.

 

돈을 쓰는 방법은, 학원을 간다든가 온라인 강의들을 들어서 실력을 기르는 방법이 있습니다. 이것은 굉장히 체계적인 가이드가 존재하고, 피드백을 해 줄 사람도 (돈을 충분히 낸다면) 있습니다. 물론, 어떤 한계점을 올라가면 학원이나 온라인 강의가 해결 해 주지 못하는 시점이 존재하지만, 그 한계점에 도달한 사람은 한국에는 두자릿수 정도 된다고 생각합니다.

 

그렇지 않은 방법은, 돈을 많이 쓰지 않고 배울 수 있는 자료들을 제공 해 주는 곳입니다. 제가 알고 있는 커뮤니티는, Baekjoon Online Judge, Codeforces 등이 있고, 다양한 문제들과 에디토리얼, 그리고 가이드를 제공합니다. 또한, 적당한 가격의 책을 사면 그 책에서 다양한 공부할 수 있는 자료들을 준비 해 줍니다. 그래서 그 에디토리얼과 가이드를 보고 배우면 됩니다. 무엇을 공부할 지 모를 때에는, 문제들을 고민하고, 막히면 에디토리얼을 참고하면서 스킬을 익혀갈 수 있습니다. 그래서 열심히 공부하면, 충분히 높은 자리에 올라갈 수 있습니다.

 

...라면 행복하겠지만, 생각보다 굉장히 많은 병목들이 있습니다.

 

일단 커뮤니티부터 얘기를 해보면, 백준 온라인 저지는 생각보다 많은 얘기들이 슬랙 내에서 이루어집니다. 그리고, 코드포스는 많은 얘기들이 블로그에서 이루어집니다. 그리고 그 커뮤니티만의 독특한 문화와 요구치가 있습니다. 이 문화가 자신과 맞지 않다면 그 커뮤니티에 손을 대는 일이 줄어들게 됩니다.

 

BOJ슬랙에서는 슬랙 내부에 친목이 강한 편입니다. 이 일은 필연적이라고 생각합니다. 이유는 오프라인 대회를 가면, 계속 아는 사람을 만나기 때문입니다. 그렇기 때문에, 외부 사람이 보았을 때 무슨 얘기인지 모르는 대화를 하는 경우가 있고, 친목하는 문화는 배우려는 사람으로서 하여금 얼어지게 할 수도 있습니다.

 

Codeforces에서는 실력으로 사람을 재는 경우가 많습니다. 저는 ratism이라고 까지 표현 합니다. 이게 무슨 얘기냐면, 포스트의 내용과 관계 없이 그 사람의 실력, 그 사람의 색으로 게시글을 판단하는 경우가 많다는 것입니다. 그리고 레이팅이 낮은 사람이 질문을 하면 잘 안 받아주는 경우도 있습니다.

 

ratism을 단적으로 보여주는 예라고 생각합니다. 이 게시글은, 의미가 없기 때문에 운영자에 의해 블라인드 처리되었습니다.

뭐 이런것들은 사실 부가적인 것들이고, 뭐 어느정도 참아줄 수 있는 것들입니다. 이 다음의 진입장벽은 영어라고 생각합니다. 자신의 실력을 측정하기 위한 프로그래밍 대회에는 Codeforces, Atcoder, Topcoder 등이 있고 이 문제들은 전부 다 영어로 출제 됩니다. 즉, 자신의 실력을 측정하고 점수로 받아보고 피드백을 받기 위해서는 영어가 필수적입니다. (Codeforces는 러시아어, Atcoder는 일본어를 할 줄 알면 되지만... 이를 아는 것이 영어를 아는 것 보다는 좀 더 어려운 것 같습니다.) 어떤 어려운 자료구조에 대한 자료들을 요구해도, 영어로 된 튜토리얼 링크를 받는 경우가 많습니다. 이를 위해서 어느정도는 영어에 익숙해 질 필요가 있습니다. 저는 "프로그래밍은 누구나 배울 수 있다, 영어를 안 다면." 이라는 말이 정말 맞는 말이라고 생각합니다.

 

영어는 정말, 한국에서 PS를 즐기고 싶을 때 너무 필연적으로 필요하다고 생각합니다.

 

다음으로는, PS자체가 가지고 있는 진입장벽도 있습니다. 진입 장벽이 수학이라고 생각합니다. PS는 본질적으로 숫자 놀음이고, 어느 정도 수학을 할 줄 알아야 진입 할 수 있다고 생각합니다. 가령이면, n과 k가 양의 정수 일 때, n/k 보다 크거나 같은 최소의 정수를 구하는 방법은 (n-1)/k+1 입니다. 이것을 직관적으로 받아들이지 못한다면, 그냥 ceil(n/k)를 모두 더하는 것과 같은 상대적으로 간단한 문제를 푸는데도 오랜 시간이 걸릴 것 입니다.

 

그리고, 이는 PS자체만 가지고 있는 것이 아니라 모든 일이 가지고 있는 장벽으로 시간이 있습니다. 설명하지 않아도 잘 알 수 있을 것이라고 생각합니다.

 

그냥 잡설들을 해봤습니다. 결론은 딱히 내지 않겠습니다.

'생각들' 카테고리의 다른 글

한국에서 PS를 공부하기 위한 방법?  (0) 2019.05.21
동아리 하제  (0) 2018.08.27
교수님과 상담을 하고 왔습니다  (1) 2018.07.11
2018년 가을 5학기 수강신청  (0) 2018.07.09
자기비하에 내가 느낀 점에 대해  (2) 2017.12.16
기말고사 안 갔다.  (0) 2017.12.12

방어력은 체력을 감소시킬 때, 원래 피해보다 더 낮은 피해를 받게 해주는 수치이다.

원래 특정 수치만큼의 피해가 들어가야할 대상이, 방어력이 있으면 그 수치가 줄어들고 방어력이 높으면 높을수록 더더욱 줄어든다. 게임의 특정 스킬 중에는 방어력이 있는 캐릭터, 몬스터 등의 방어력을 줄여주어 더 많은 딜을 기대하도록 하는 스킬들이 있는 경우가 많다. 이 중 방어력을 감소시키는 스킬은 방어력이 높은 대상이 영향을 더 많이 받을까 혹은 적은 대상이 영향을 더 많이 받을까?

 

방어력의 공식은 게임마다 다르지만 내가 하는 게임들에서 방어력 공식을 가져와 봤다.

그 게임들의 방어력에 따른 체력의 공식은 대략 다음과 같다:

 

방어력 > 0 일 때: 실제 피해 = 원래 피해 * 100 / (100 + 방어력),

방어력 <= 0 일 때: 실제 피해 = 원래 피해 * (2 - 100 / (100 - 방어력) )

 

(방어력이 0 미만으로 내려갈 수 없는 게임도 있다.)

 

방어력 > 0 인 경우를 생각 해 봤을 때, 체력이 X만큼이라면, 방어력 감소가 적용되기 전의 대미지를 X(1+(방어력/100)) 만큼 맞아도 된다는 것이다. 즉, 방어력 수치는 체력을 (1+방어력/100)만큼 곱해주는 수치라고 보아도 된다. (물론, 방어력을 뚫는 공격 등의 수단이 있는 경우도 있지만, 여기서는 편의상 모든 대미지가 방어력으로 줄어든 후에 들어온다고 생각하자)

 

이때 방어력 감소가 50, 100 만큼일 때 대미지가 얼마만큼 더 들어가나를 그래프로 그려보았다. (추가 대미지가 50%이면, 대미지가 방어력 감소 전보다 후가 1.5배 더 들어간다.)

 

사진 1. 음수 방어력이 없다고 가정했을 때의 효율, 파란색은 방어력 감소 100, 주황색은 방어력 감소 50이다.
사진 2. 음수 방어력이 있다고 가정했을 때의 효율, 파란색은 방어력 감소 100, 주황색은 방어력 감소 50이다.

일반적인 경우에, 방어력 감소 수치는 보통 방어력을 넘지 않는 경우가 대부분이기 때문이다. 고정수치 방어력 감소의 효율(고정 수치 방어력 감소를 썼을 때 들어가는 추가 대미지 비율)은 상대가 방어력이 높을 경우에 더 낮다.

 

즉, 고정수치 방어력 감소는 상대가 방어력이 낮을 때 효율적인 수단이다.

 

이는 사실 일반적으로 "방어력 감소"라는 말을 들었을 때 직관과 잘 안 맞아떨어지는 부분이기도 하다. 제목을 방어력 감소의 함정이라고 지은 것도 이 이유 때문이다.

 

방어력이 %로 감소한다면 어떨까? 현재 방어력의 25%, 50%를 감소시켜주는 수단이 있으면 어떨까?

사진 3. 추가데미지 효율, 파란색은 방어력 감소 50%, 주황색은 방어력 감소 25%이다.

이 경우에는 방어력이 높은 경우에 효율이 더 좋음을 알 수 있다.

 

즉, 퍼센트 방어력 감소는 상대가 방어력이 높을 때 효율적인 수단이다.

 

내가 요즘 하는 게임은 방어력 감소가 모두 고정수치이고 방어력 수치가 방어력 감소 수단 수치보다 월등히 높으므로, 방어력 감소 스킬은 방어력이 더 낮은 상대에게 쓰는 것이 효율적이라는 것을 알 수 있다.

'게임' 카테고리의 다른 글

BOFXV BMS Package  (5) 2019.11.23
General BMS Package (64.5GB) (Outdated)  (5) 2019.09.06
BMS Archive Service  (0) 2019.08.12
따오콘을 샀습니다.  (0) 2019.07.09
방어력 감소의 함정  (0) 2019.05.08
[소녀전선] 거지런 분석 및 추천 루트?  (0) 2017.11.24
Merry Problem Solving 4일차 (12/24) 입니다!




ARC103F - Distance Sums







ARC103E - Tr/ee











Merry Problem Solving 3일차 (12/23)는... 제끼고 봄베이 사파이어와 토닉 워터와 레몬을 섞어서 친구와 맛있게 마셨습니다. 벌금 7000원 끄악

Merry Problem Solving 2일차입니다! 12/22에 푼 문제들입니다.





091F - Strange Nim







088D - Wide Flip





Merry Problem Solving을 하고 있습니다! 2018/12/21부터 2019/1/1 까지 매일 앳코더(https://atcoder.com)의 정해진 점수만큼의 문제를 푸는 스터디입니다! 백준 온라인 저지 슬랙(https://acmicpc.net, https://acmicpc.slack.com) 의 #2018_merry_ps 채널에서 진행하고 있습니다. 저는 하루에 총 1400점을 풀기로 했습니다.


사실 앳코더는 점수에 따라 문제의 난이도차가 꽤 나기 때문에 ARC의 F번을 2개 풀어서 1400점을 채우는게 보통이나... 오늘 너무 바빴기 때문에 ARC의 D 3문제를 풀었습니다.


문제의 한국어로 간단하게 정리한 것과 풀이를 적습니다.




091D - Remainder Remainder







092D - Two Sequences







093D - Grid Components





테스트 데이터를 만들 때 즐겨 쓰는 데이터 들을 첨부합니다. 이 데이터들은 SCPC (삼성전자 대학생 프로그래밍 경진대회) 에도 활용 되었습니다.


내용이 간략하게만 쓰여져 있고, 정리 할 일이 있으면 길게 작성하도록 하겠습니다.


(판도라의 상자이므로 열지 마십시오)

AntiHash.pdf

AntiSort.pdf


  1. 안녕하세요, 좋은 글 감사합니다. 이번에 소멤 포스팅하면서 도움을 많이 받았습니다. 그런데 m이 2^32일 경우 (1-x)(1-x^2)(1-x^4)(1-x^8)(1-x^16)(1-x^32)(1-x^64)(1-x^128)으로 두면 2^28의 배수라 아직 부족하고 (1-x^256)까지 곱해져야 2^36의 배수가 되면서 충돌이 발생되어 길이가 512이어야 할 것 같은데 혹시 제가 잘못 이해한 부분이 있을까요?

    저는 아래와 같이 코드를 만들었습니다.

    def Collision3_32():
    s1 = ''
    s2 = 'b'*512
    p = 243423223425 # any odd
    m = 2**32
    val = 0
    for i in range(512):
    if parity(i):
    s1 += 'a'
    else:
    s1 += 'c'
    print(RabinKarp(s1,p,m) == RabinKarp(s2,p,m))

  2. parity는 그냥 전체 bit를 xor한 값입니다.
    def parity(x):
    ret = 0
    while x:
    ret ^= (x&1)
    x >>= 1
    return ret
    # m = 2**32

어떻게 될 지 모르겠습니다. 제가 성격상 애초에 동아리 회장같은게 적합하지 않았을지도 모릅니다. 오히려 System Operator 같은 포지션만 가지고 있는게 제일 맞았을지도 모르겠습니다.


내일 동아리 내부에서 얘기를 해보기로 했습니다. 거기까지. 회장인 상태에서 글을 쓰면, 물론 이건 제 생각을 쓰는 곳이지만 동아리의 의견으로 비출수도 있고 일단 좀 미뤄두려고 합니다.


개강도 했고 지치네요. 사이클을 돌리기 위해서라도 일찍 자야겠어요. 안녕히 주무세요.

'생각들' 카테고리의 다른 글

한국에서 PS를 공부하기 위한 방법?  (0) 2019.05.21
동아리 하제  (0) 2018.08.27
교수님과 상담을 하고 왔습니다  (1) 2018.07.11
2018년 가을 5학기 수강신청  (0) 2018.07.09
자기비하에 내가 느낀 점에 대해  (2) 2017.12.16
기말고사 안 갔다.  (0) 2017.12.12

홈페이지에 드디어 SSL 인증서를 달았습니다! 


https://kyouko.moe


티스토리 블로그에도 달고 싶은데 지원을 안하네요... SSL 인증서 좀 지원해주면 좋으려만


좀 더 자세한 얘기는 호스팅을 bluehost에서 linode로 옮겼습니다. 처음에 서버 세팅에 관한 지식이 없을때 php로 사이트를 뚝딱뚝딱 만든것도 있고, 가격이 월 10$라서 샀었는데, 지금은 linode하나 올려서 쓰는게 좀 더 마음이 편하네요. 가장 싼 플랜이 한 달 5$ 에요. 역시 루트권한 있으니까 마음이 편해요.

예전에는 블루호스트가 인증서 적용하는게 유료라서 못 달았는데, 지금은 letsencrypt로 인증서를 받아서 적용했습니다.


호스팅이 이것저것 난잡해지기도 해서, 아예 flask기반으로 웹을 재구성 하고 있는데 아직 옮기지 못한게 있네요.


하나는 Musicplayer인데, Youtube Red를 쓰니까 별로 쓸 일이 없어지는것 같기도 하네요.

다른건, 사람들에게 링크를 줄 때 잡다하게 파일들을 올리고 그걸 주는 방식으로 문제를 만들었는데, 이것들은 지금 살려둬야 할지 말아야 할지 모르겠는 링크도 많아서 일단은 안 살려 뒀습니다...


사실 최근에 트래픽 부담이 꽤나 있는데 linode도 한달정도 써보고 트래픽 부담이 있으면 여기만 따로 옮기는 방식을 쓰든가 여러가지 조치를 취해야 할 것 같네요.

  1. SSL 2018.07.29 09:22

    클라우드 플레어를 이용하면 티스토리에도 인증서를 붙이는게 가능한걸로 알아요ㅎㅎ

  2. 혜야팬 2020.02.29 18:48

    어느순간 보니까 티스토리 블로그에도 SSL 인증서가 달려요! 이것도 Let's encrypt 써서 발급받네요.

+ Recent posts