Python 카테고리

CodeUp 1051~1060(★☆☆☆☆)

leehyungoo 2019. 9. 28. 22:48

문제 1051

 

출력

b가 a보다 크거나 같은 경우 1을, 그렇지 않은 경우 0을 출력한다.

 

입력

두 정수 a, b가 공백을 두고 입력된다.
-2147483647 <= a, b <= +2147483648

 

입력 예시

0 -1

 

출력 예시

0

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = input().split(" ")
    a = int(a)
    b = int(b)
    if b >= a:
        print(1)
    else:
        print(0)

 

문제 1052

 

출력

a와 b가 다른 경우 1을, 그렇지 않은 경우 0을 출력한다.

 

입력

두 정수 a, b가 공백을 두고 입력된다.
-2147483647 <= a, b <= +2147483648

 

입력 예시

0 1

 

출력 예시

1

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a != b:
        print(1)
    else:
        print(0)

 

문제 1053 [1]

 

출력

입력된 값이 0이면 1, 1이면 0을 출력한다.

 

입력

정수 1개가 입력된다.(단, 0 또는 1 만 입력된다.)

 

입력 예시

1

 

출력 예시

0

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a = int(input())
    if a == False:
        print(1)
    else:
        print(0)

 

문제 1054

 

출력

둘 다 참(1)일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.

 

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

 

입력 예시

1 1

 

출력 예시

1

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a & b == True:
        print(1)
    else:
        print(0)

 

문제 1055

 

출력

하나라도 참일 경우 1을 출력하고, 그 외의 경우에는 0을 출력한다.

 

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

 

입력 예시

1 1

 

출력 예시

1

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a | b == True:
        print(1)
    else:
        print(0)

 

문제 1056

 

출력

참/거짓이 서로 다를 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.

 

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

 

입력 예시

1 1

 

출력 예시

0

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a == b:
        print(0)
    else:
        print(1)

 

문제 1057

 

출력

참/거짓이 서로 같을 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.

 

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

 

입력 예시

0 0

 

출력 예시

1

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a != b:
        print(0)
    else:
        print(1)

 

문제 1058

 

출력

둘 다 거짓일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.

 

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

 

입력 예시

0 1

 

출력 예시

0

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    if a | b == False:
        print(1)
    else:
        print(0)

문제 1059[2]

 

출력

비트 단위로 1 -> 0, 0 -> 1로 바꾼 후 그 값을 10진수로 출력한다.

 

입력

정수 1개가 입력된다.
-2147483648 ~ +2147483647

 

입력 예시

2

 

출력 예시

-3

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a = int(input())
    a = ~a
    print(a)

 

문제 1060

 

출력

두 정수를 비트단위(bitwise)로 and 계산을 수행한 결과를 10진수로 출력한다.

 

입력

2개의 정수가 공백을 두고 입력된다.
-2147483648 ~ +2147483647

 

입력 예시

3 5

 

출력 예시

1

import io, sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
if __name__ == '__main__':
    a, b = map(int, input().split(" "))
    print(a & b)

[1] 참이나 거짓으로 만든 문제들이 많이 있었습니다. 그곳에서 True, False이 나서 한번 사용하여 문제를 풀어보았습니다. 다른 방법들을 사용하여 간편하게 사용할 수도 있습니다. 

[2] 비트 연산자라는 것을 처음 접해보았습니다. 처음에 0 -> 1 바꾸고 10진수로 바꾸라는 말에 순간 당황했습니다. 

비트 연산자가 그냥 비교할 때 AND(&), OR(|)정도로만 쓰이는 줄 알았는데 다른 방법이 많이 사용되었습니다. 다음 문제에서도 사용되는 비트연산자이니 공부하여 오겠습니다.

 

그리고 원래 test1, test2 = input().split(" ")

test1 = int(test1)

test2 = int(test2)

이런 방법으로 사용하고 있었는데 이렇게 나누어서 사용하면 10개씩 나올 때에는 코드가 엄청나게 지저분해질것 같다는 생각에 검색하여 map(int, input().split(" ")) 이 방법으로 코드 두 줄 지우고 간편하게 사용 가능하게 되었습니다. 

codeUp문제 푸는 중간중간에 python 내장함수 공부하여 이해한 부분을 설명하여 올리도록 하겠습니다.