코딩 연습/Python

섹션2: 코드 구현력 기르기

썬2 2021. 11. 7. 18:33

1번:

for i in range(1,N+1):
    if N % i == 0:
       cnt += 1
    if cnt == K:
        print(i)
        break
else:
    print(-1)

항상 if-else 조건문은 같은 라인에 쓰는 줄 알았는데, 이런식으로 반복문 밖에 써도 된다는 것을 알았다. 신기하다~

 

2번:

for i in range(N):
    first = list(map(int, input().split()))
    second = list(map(int, input().split()))

    nums = second[first[1]-1:first[2]]
    nums = sorted(nums) # a.sort()하면 inplace로 오름차순 정렬
    print('#',i+1, ' ', nums[first[3]-1]) # print("#%d %d" % (i+1, num[first[3]-1))

a.sort()와 print문 할때 위와 같은 방법이 있다는 것을 배웠다.

 

3번:

set() 자료형: 중복 제거.

 

4번:

python에서 round함수는 round_half_even방식을 취한다.

a=4.5면 print(round(a))시, '4'가 출력된다. 왜냐면 짝수 값으로 근사값해서 4가 출력된다.

만약 5.5면 '6'출력된다. 그래서 반올림하려면 a=int(a+0.5)로 하기.

 

7번: 소수의 개수: 에라토스테네스 체.

for 문 속 %로 계속 나누기보다 에라토스테네스 체를 사용하면 더 효율적으로 계산할 수 있다.

> 숫자를 배열의 인덱스로 두고 0으로 초기화. 소수가 아니면 1로 채우기.

 

9번:

세개 중 두개가 같은 경우, 같은 숫자를 출력할때:

a==b, a==c, b==c로 총 3가지 경우의 수가 있다.

그럼 a==b or a==c 일때와 b==c일때로 나누어서 조건문 만들면 된다.

 

10번:

보는 관점에 따라 코드가 달라질 수 있다.

before 변수 관점으로 보지 말고, x 관점으로 보자.

 

'코딩 연습 > Python' 카테고리의 다른 글

섹션4: 이분탐색(결정알고리즘)  (0) 2021.11.14
섹션3: 탐색&시뮬레이션(string, 1차원, 2차원 리스트 탐색 )  (0) 2021.11.11
주식가격  (0) 2021.09.25
H-Index  (0) 2021.09.25
파이썬 기초 문법  (0) 2021.09.21