201211 개발일지(4일차)- 알고리즘 기초 공부(파이썬 &와 and / List의 Filter, Index, 오름차순 및 내림차순, 중복제거 / for 반복문 역순, 소수점 출력)

고재개발·2020년 12월 11일
0

Algorithm

목록 보기
1/26
post-thumbnail

파이썬 for 반복문 역순

for i in range(10,0,-1) :
※ for i in range(10, 0) : 은 안된다~
for i in reverser(range(10)) : 가능!

개선이 필요했던 문제 : 백준 2753

*최대한 요약해서, 보기 쉽게 작성하는 연습이 필요하다!
이제 시작이니까 파이팅하잣

문제 : 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.
윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.
예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.

#첫 번째로 짠 코드
if a%4==0 and a%100!=0:
    print(1)
elif a%100==0 and a%400!=0:
    print(0)
elif a%400==0:
    print(1)
elif a%4==0:
    print(1)
else:
    print(0)
   
#두 번째로 짠 코드
if a%4==0:
    if a%400==0:
        print(1)
    elif a%100==0:
        print(0)
    else:
        print(1)
else :
    print(0)   

#우성이가 알려줘서 최대한 간단하게 짠 세 번째 코드
if (a%4 == 0) and (a % 100 !=0 or a % 400 == 0):
    print(1)
else : 
    print(0)

파이썬에서 '&'과 'and'는 다르다!

'and'는 논리연산자로 True, False 등을 연산하며
'&'는 비교 연산자 및 bitwise 연산자이다.
※ 마찬가지로 'is'와 '=' 및 'or'과 '|'가 비슷한 관계이다.

파이썬 List에서 .index로 몇 번째 값인지 찾아낼 수 있다!

Ex) a=[1,5,3,2,4] 일 때, a.index(max(a))는 1이 된다.

파이썬 List 필터링 : 원하는 요소만 뽑아내기 !

숫자로만 구성된 리스트에서 50 이상의 숫자만 뽑아내고 싶은데.. 방법을 몰라 너무 애먹었다.. 아래 링크를 참고하자
내가 사용한 방법은 함수를 만들고, filter를 사용했다..
List Comprehension은 아직 이해하지 못했다! 언젠가 이해가 되는 날 올거야~

파이썬에서 소수점 원하는 자리수 만큼 출력하기

print('%.원하는자리수f' % 출력값) ☞ 원리를 더 알아보세요!

파이썬 List에서 중복된 값 제거하기

  1. set type으로 바꿔주면 중복된 값이 자동으로 제거 됨
  2. for 반복문을 이용해 새로운 List 생성

파이썬 List에서 오름차순, 내림차순 방법

오름차순 : a.sort() 방식을 사용
내림차순 : a.sort(reverse=True) 방식을 사용

profile
고재개발

0개의 댓글