211013_TIL


10月13日(水)

今日やったこと


1.ssafy客観式
今朝は調子が悪くて、午後を過ぎてから勉強しました.
  • ssafyの客観的な問題集を買って、ほとんど変化がなくて、がっかりしましたが、前に直接本の上で解答したあいまいな問題はまた空のノートの上で解答することができます.
  • 2. ssafy CT


    2-1<変換ビット>
    「0,1」からなるN個の数字からなる数列を与える.
    2つの行動の中に1つの行動がある.
    1. 두 숫자의 위치를 바꾼다.
    2. 하나의 숫자를 0 또는 1로 바꾼다.
    私たちが数列と欲しい数列を持っているとき、欲しい数列を生み出すために、少なくとも何回行動するかを求めます.
    現在の数列01010ターゲット数列10101
    01010
    10101
    0  3쌍 1 2쌍 
    1      0
    2対は互いに位置を変え,1対は1を変える.
    つまり、答えは数字に大きな値です.
    2-2ビット演算XOR(好みが異なる場合は1[TRU]が異なる場合は0[FALSE])
    A^B=C式でAとCが与えられたときにBを求める.
    A^B = C
    A^C = B
    交換法則が成立する.
    2進数を1つ与えた場合、2進数で9に乗じた数を求める.
    shiftを思い出して、8を乗じた意味は、左に3回切り替えればいいということです.
    9를 곱한다는 건 
    A*9 = A(8+1)
    	= A*8+A
        즉 왼쪽 세칸 + A이다.
    ex)2進数111に9を乗じて2進数を求める
    111000
    +  111
    -------
    111111 <= 정답
    2-3進数
    <2 to 8>
    バイナリ数を与えます.
    与えられた数を8進数に変換する値を求める.
    이진수 abcde = a*2^4 + b*2^3 + c*2^2 + d*2^1 + e*2^0
    팔진수 abcde = a*8^4 + b*8^3 + c*8^2 + d*8^1 + e*8^0
    이진수 1011011101 =
    (1*2^0)2^9+(0*2^2+1*2^1+1*2^0)2^6 + (0*2^2 + 1*2^1 + 1*2^0)2^3 + (1*2^2 + 0*2^1 + 1*2^0)2^0
    1 + (2+1) + (2+1) + (5)
    팔진수 1335 <= 정답

    nとn進数が与えられた場合、その数をn−1で割った残数を求める.
    (an^4 + bn^3 + cn^2 + dn^1 + e) % (n-1)
    5
    an^4 % (n-1)
    = (annnn) % (n-1)
    =a(n/n-1)^4(5を4で割った剰余は1//ある数を小数で割った剰余は常に1)
    = a*1
    すなわち(a+b+c+d+e)%(n-1)
    ex) 6, 1352
    (1+3+5+2) % 5
    1<=正しい