전체 글 33

람다식 정렬

람다식 정렬 예시 람다식을 활용하면 정렬 기준을 설정할 수 있다. # 문자열을 길이에 따라 정렬 fruits = ['banana', 'apple', 'cherry', 'orange'] sorted_fruits = sorted(fruits, key=lambda x: len(x)) print("문자열을 길이에 따라 정렬한 결과:", sorted_fruits) people = [ {'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}, {'name': 'Charlie', 'age': 35} ] # 'age' 키 값을 기준으로 정렬하는 람다식 sorted_people = sorted(people, key=lambda x: x['age']) print("나이를 기준으..

set(집합)

특징 순서 x 집합안에서는 unique한 값을 가진다. 중괄호를 사용하는 것은 dictionary와 비슷하지만 key를 가지고 있지 않다. 선언 S = set() 집합 메소드 add : 원소 추가 S.add(넣을 원소) update : 중복은 자동으로 제거 되고 수정 .. 주로 여러 데이터를 한번에 넣을 때 사용 S.update([3,4,5]) remove : 원소를 제거하고, 원소가 존재하지 않으면 error발생 discard : 원소를 제거하고, 원소가 존재하지 않더라도 error 발생 x S.remove(삭제원소) S.discard(삭제원소)

백준-11723-집합

문제 해결문제에 주어진 그대로 각 기능을 구현하면 된다.다만, 입력이 최대 3,000,000 이다. 따라서 List 보다는 더 빠른 탐색속도를 가지는 Set 자료형을 선택한다.구현한 코드import sysn = int(input())S = set()for i in range(n): active = list(sys.stdin.readline().split()) if active[0] == 'add': S.add(int(active[1])) elif active[0] == 'remove': S.discard(int(active[1])) elif active[0] == 'check': if int(active[1]) in S: pr..

알고리즘/백준 2024.03.27

백준-1157-단어 공부

문제 해결딕셔너리 자료형을 통해서 각 단어의 알파벳을 센다.max_val 를 통해서 가장 많이 세어진 알파벳을 확인한다.error라는 변수를 이용하여 가장 많은 알파벳이 여러 개 있는지 체크구현한 코드text = input().upper()check = {}for i in text: if i in check: check[i] += 1 else: check[i] = 1max_val = 0error = 0for key, value in check.items(): if max_val 메모리 : 33076 KB시간 : 208ms  => 개선 필요개선가장 많이 나온 단어를 구분하는 수단으로 error라는 변수를 활용하여 전체 알파벳을 순환하면서 확인하는 방식을 사용했을 때..

알고리즘/백준 2024.03.26