반응형
XOR 연산을 사용하면 짧게 풀 수 있다.
보안쪽에선 간단하게 XOR 연산으로 암호화/복호화 를 구현할 수 있는데
A ^ B 한 값을 다시 ^B로 연산하면 A 자기 자신이 되는 특성을 이용하면 된다.
1. A ^ B = C
2. C ^ B = A
( 암호화 하고 싶은 값을 특정한 값으로 XOR 연산을 해주면 일종의 암호화가 되고, 다시 그 값으로 XOR 해주면 복호화가 된다. 일종의 key를 통해서 암호화 복호화를 진행하는 것.)
#include <stdio.h>
int main() {
int a, b, c, d, e, f;
scanf("%d %d %d %d %d %d", &a, &b, &c, &d, &e, &f);
printf("%d %d", a^c^e, b^d^f);
}
▶︎ XOR의 특징
같으면 0, 다르면 1
1 XOR 1 = 0
1 XOR 0 = 1
0 XOR 1 = 1
0 XOR 0 = 0
▶︎ 예시
1. 0과 했을 때
A ^ 0 = A
2. 자기 자신과 했을 때
A ^ A = 0
반응형
'[백준]' 카테고리의 다른 글
[BaekJoon/백준] 10872번 (0) | 2020.09.23 |
---|---|
[BaekJoon/백준] 3053번 (0) | 2020.09.22 |
[BaekJoon/백준] 1085번 (0) | 2020.09.21 |
[BaekJoon/백준] 9020번 (0) | 2020.09.21 |
[BaekJoon/백준] 1929번 에라토스테네스의 체 (0) | 2020.09.20 |