Hoon222y

[BOJ 14614] Calculate! 본문

코딩/BOJ & 알고스팟

[BOJ 14614] Calculate!

hoon222y 2017. 5. 30. 14:27

https://www.acmicpc.net/problem/14614


XOR연산에 관련된 문제이다.


핵심은 비트연산은 && ,|| 가 아니라 &,|을 쓴다는 것이다.!!!!!


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <cstring>
#include <vector>
#include <cstdio>
#include <queue>
#include <algorithm>
 
using namespace std;
 
int main(){
    int a,b;
    string c;
    scanf("%d%d" , &a,&b);
    cin >>c;
    int len = c.length();
    
    
    int ans = ((~a) & b) | (a & (~b));
    
    if((c[len-1]-'0')%2 == 0){
        printf("%d\n" , a);
    }else{
        printf("%d\n" , ans);
    }
    
    return 0;
}
cs


와!!!!!!!!!!!!!!!!! XOR연산은 그냥 a^b 로 하면된다니!!!!!!!


미쳐!!!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <cstring>
#include <vector>
#include <cstdio>
#include <queue>
#include <algorithm>
 
using namespace std;
 
int main(){
    int a,b;
    string c;
    scanf("%d%d" , &a,&b);
    cin >>c;
    int len = c.length();
    
    int ans = a^b;
    //int ans = ((~a) & b) | (a & (~b));
    
    if((c[len-1]-'0')%2 == 0){
        printf("%d\n" , a);
    }else{
        printf("%d\n" , ans);
    }
    return 0;
}
cs


'코딩 > BOJ & 알고스팟' 카테고리의 다른 글

[BOJ 1300] K번째 수  (0) 2017.06.15
[BOJ 1194] 달이 차오른다, 가자.  (1) 2017.06.15
[BOJ 1182] 부분집합의 합  (0) 2017.05.25
[BOJ 1261] 알고스팟  (0) 2017.05.24
[BOJ 14499] 주사위 굴리기  (2) 2017.04.11
Comments