문제 설명은 다 보고 왔으니 생략... 꽤 헷갈렸던 문제...ㅎㅎ

d = []
for i in range(19):
    d.append([])
    for j in range(19):
        d[i].append(0)

for i in range(19):
    d[i] = list(map(int, input().split()))

n = int(input())
for i in range(n):
    x, y = map(int, input().split())
    for j in range(19):
        d[x-1][j] = 1 if d[x-1][j] == 0 else 0
        d[j][y-1] = 1 if d[j][y-1] == 0 else 0

for i in range(19):
    for j in range(19):
        print(d[i][j], end=' ')
    print()

 

반응형

 

 

https://codeup.kr/problem.php?id=6082 

 

[기초-종합] 3 6 9 게임의 왕이 되자(설명)(py)

python언어기초100제v1.0 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요. - 모든 내용

codeup.kr

 

아마 문제는 다 보았을테니, 문제에 대한 설명은 생략합니다!

 

간단하지만, 푸는 방법이 조금 달라서 글을 씀다! 힌트는 count

 

문제의  조건은 Input 값이 27 이하로 설정되어 있어서

대부분 아래의 소스처럼 i를 10으로 나눈 나머지값을 구하는 방식으로 해결했더라..

n = int(input())

for i in range(1, n+1) :
  if i%10==3 or i%10==6 or i%10==9 :
    print("X", end=' ')
  else :
    print(i, end=' ')

# 결과값
# 1 2 X 4 5 X 7 8 X 10 11 12 X 14 15 X 17 18 X 20 21 22 X 24 25 X 27 28 X 30 31 32 X 34 35 X 37 38 X 40 

물론, 조건을 생각하면 이게 맞지만.... ㅎㅎ

근데 369게임이 27으로 끝나는 법은 없지... ^_^

30이상 input값을 받아버리면 제대로 출력이 되지 않는 오류가 발생하니~

이왕 짤거 제대로 짜보는 게 좋을 것 같아서

a = int(input())

for i in range(1, a+1):
    sum_x = str(i).count('3') + str(i).count('6') + str(i).count('9')
    rs = "X"*sum_x if sum_x > 0 else i
    print(rs, end=' ')

# a = 43 일 때,
# 결과값
# 1 2 X 4 5 X 7 8 X 10 11 12 X 14 15 X 17 18 X 20 21 22 X 24 25 X 27 28 X X X X XX X X XX X X XX 40 41 42 X

 

이렇게 짜봤다..^^

 

반응형

'[ 개발 ] > Algorithm' 카테고리의 다른 글

[CodeUp] 코드업 기초 100제 6096번 풀이 (py)  (0) 2022.11.13

+ Recent posts