ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • #716 div2 04/19
    대회/코드포스 2021. 4. 20. 20:52

    codeforces.com/contest/1514

     

    Dashboard - Codeforces Round #716 (Div. 2) - Codeforces

     

    codeforces.com

    기분 좋은 라운드 

     

     

    하나라도 완전 제곱수 아닌 게 있으면 YES 아니면 NO sqrt를 이용해서 찾아본다. 어차피 어떤 정수의 완전제곱수라면 정수일테고 그 반대도 성립하기 때문에 그냥 (int)sqrt를 이용해서 찾으면 된다.

     

    sqrt의 기본형이 실수형인걸 알았다. 

     

    12분 솔브 

     

    1솔브 끝 

     

    B

     

    bitwise AND 를 each마다 했을 때 0 이되게끔 하는 줄 알고 순열을 어떻게 사용해야 할지를 생각했다 하지만 그게 아니었고 모든 수에 대해서 bitwise를 하는 거였다. 즉 모든 bit에 대해서 0이 있어야 한다는 소리이고, k개의 비트를 n개에 하나하나씩 넣으면 된다. n^k가 정답 

     

    그런데 그냥 n^k를 하는 것이 아니라 

     

    ll ipow(ll x, ll p){
    	ll ret = 1, piv = x;
    	while(p){
    		if(p & 1) ret = ret * piv % m;
    		piv = piv * piv % m;
    		p >>= 1;
    	}
    	return ret;
    }
    

     

     

    몰래 가져온 Green55님 코드 

     

    딱 봤을 때는 저게 뭐하는 코드인가 했는데 보니깐 pow를 하나하나 하는 것 보다 훨씬 빠르게 한다. logn의 속도로 하는 것 같다. 

     

    항상 뭔가를 배운다. 존경 

     

    C

     

    이거는 윌슨 정리를 이용한다고 하는데 정리부터 무서운 기호들로 둘러쌓여 있어서 좀 공부를 해봐야겠다. 

     

     

     

    정말 오랜만에 업솔빙을 했다. 기분이 상쾌 

     

     

     

     

     

    '대회 > 코드포스' 카테고리의 다른 글

    #721 div2 5/23 virtual  (0) 2021.05.23
    Educational 107 div2 5/14 virtual  (0) 2021.05.14
    #712 div2 04/03  (0) 2021.04.04
    #709 div2 03/21  (0) 2021.03.22
    #708 div2 03/17  (0) 2021.03.19

    댓글

Designed by Tistory.