4 리스트 조작
5844 단어 AtCoder
가격:100엔
kindle: htps //w w. 아마존. 이. jp/dp/B09C3TPQYV
booth(pdf): htps // 192. 보오 th. PM / MS / 3179185
이전 : htps : // 이 m/사의 192/이고 ms/4432b669 아04에 69287c05
다음 것 : htps : // m / 192 / ms / 40fdf83 세다 cbc9d68 A6
【목표】
・리스트의 작성, 요소의 추가 방법을 익힌다.
【개요】
B 문제에서 자주 발생하는 숫자 열을 처리하는 문제. 기본적인 리스트의 조작을 이 문제로 익히자.
【방침】
문제문에는 「제거」라고 있지만, 리스트에 받은 후 문제문대로 삭제해 가면 인덱스 번호가 어긋나거나 실행시간이 너무 길거나 해서 힘들어진다.
다음과 같이 구현하면 된다.
(1) 답을 저장하는 리스트(=ans)를 준비한다
(2) 리스트의 요소를 차례로 확인해, X와 다른 숫자라면 ans에 격납한다
(3) ans의 요소를 출력한다
【실장】
입력을 받다
N,X=map(int, input().split())
A=list(map(int, input().split()))
대답을 포함하는 목록을 ans로 정의합니다. ans는 처음 비어 있습니다.
ans=[]
다음에 A의 요소를 차례로 확인해, X와 다른 숫자라면 ans에 추가해 간다.
목록에 추가는
List.append (요소)
라고 쓴다.
for i in range(N):
if A[i]!=X:
ans.append(A[i])
A[i]!=X는 "A[i]가 X와 다르다"는 의미. 그 경우는 ans에 A[i]를 추가한다.
마지막으로 대답을 출력한다.
print(*ans)
별표를 붙이지 않고 단순히 print(ans)로 했을 경우, 불필요한 괄호가 붙는다.
예를 들어 ans=[3,6,4]인 경우,
print(ans) → [3, 6, 4]
print(*ans) → 3 6 4
된다.
리스트의 요소를 출력할 때는 별표를 붙이도록 하자.
이 문제에 대해서는 공식 해설의 「해답 예(python)」가 꽤 매니악한 쓰는 방법을 하고 있다. 이 문제를 풀 수 없었던 사람이 읽어도 의미불명일 것이다. 어느 정도 경기 프로그래밍에 익숙해져도 의미가 없기 때문에 신경 쓰지 않아도 된다.
공식 해설의 내용은 알지만 코드 예제를 읽을 수 없다는 것은 자주 있다. 그러한 때는 「제출 결과」로부터 다른 사람의 제출 결과를 보자.
'제출일시'를 두 번 클릭하여 제출이 빠른 순서대로 나란히, 위에서 5개 정도 코드 내용을 확인하면 알기 쉬운 코드가 1개, 2개 나올 것이다.
【코드 전문】
N,X=map(int, input().split())
A=list(map(int, input().split()))
ans=[]
for i in range(N):
if A[i]!=X:
ans.append(A[i])
print(*ans)
이 기사는 졸저 "AtCoder 범인이 "녹색"이 되기 위한 정선 50문 상세 해설"의 샘플입니다
가격:100엔
kindle: htps //w w. 아마존. 이. jp/dp/B09C3TPQYV
booth(pdf): htps // 192. 보오 th. PM / MS / 3179185
이전 : htps : // 이 m/사의 192/이고 ms/4432b669 아04에 69287c05
다음 것 : htps : // m / 192 / ms / 40fdf83 세다 cbc9d68 A6
Reference
이 문제에 관하여(4 리스트 조작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sano192/items/f2bb2fde590bc11e7cfb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)