Programming/SWEA

[SWEA 6281].[파이썬 프로그래밍 기초(2) 파이썬의 기본 응용] 2. 자료구조 -리스트, 튜플 7

토토모에요 2021. 7. 22. 12:43
728x90
반응형

SW Expert Academy에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하겠습니다.

https://swexpertacademy.com/main/main.do

문제 : 다음의 결과와 같이 정수를 입력하면 리스트 내포를 이용해 약수 리스트를 출력하는 코드를 작성하십시오.

input

32

output

[1, 2, 4, 8, 16, 32]

리스트 내포기능 사용안한 code

T=int(input())
a=[]
for i in range(1,T+1):
    if T%i==0:
       a.append(i)

print(a)

일반적으로 약수구할때의 코드를 생각해 낼 수 있다.

문제 의도가 담긴 code

T=int(input())
a=[]
a_comprehension=[a.append(i) for i in range(1,T+1) if T%i==0]
print(a)

위의 리스트 내포기능 사용안한 code를 압축한다는 생각으로 접근하면 쉽다. 한글과 영어의 어순이 달라지는 것처럼 이것도 마찬가지로 추가하라!, 1부터 T+1동안!, 만약 T를i로 나눴던게 0으로 나오면!, 이런 식으로 생각하면 편하다.

반응형