도저히 알수없는 파이썬 오류 아무리생각해도 제잘못아닌듯 ㅠㅠ

조회수 576회
a=int(input())
d=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]

e=[c,c,c,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d]

for i in range(a):
    b , c=input().split(' ')
    b=int(b)
    print(b)
    c=int(c)
    print(c)
    e[b-1][c-1]=1
print(e)

이게 코드인데 그니까 바둑판 19* 19 에서 하얀돌을 올려둔 위치를 1로 위치를 입력하면
ex.

2   
4 6  
5 9

가고 치면 2개의 흰바둑알을 놓고 위치는 (4,6) (5,9)에 놓겠다는 코드인데요
문제는 e[b-1][c-1]=1 이 부분이 이상하게 작동합니다.
e[b-1][c-1] 이면 위치가 딱하난데 한 행의 전체가 다바껴버려요
뭘 잘못한거죠 ㅠㅠ

  • 음... 그 이전에 c 가 뭔지 모르겠다는 참조오류가 터질거 같은데요 엽토군 2020.3.30 17:51

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기
    import pprint
    a=int(input()) 
    e = [[0 for col in range(10)] for row in range(10)]
    for i in range(a):
        b , c=input().split(' ')
        b=int(b)
        c=int(c)
            print(b, c)
        e[b-1][c-1]=1
    
    pprint.pprint(e)
    
    1
    4 6
    4 6
    [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 1, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
     [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
    

    저도 정확한 이유는 모르겠는데 배열 초기화 하는 부분에 있어서 밑과 같거나 비슷한 경우에 이후에 특정 값에 대해서 수정 하면일괄적으로 다 바뀌더라구요..

    e = [[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]]* 10

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)