분류 전체보기 16

2606 백준 파이썬

이것이 코딩 취업을 위한 코딩 테스트다를 참고하여 풀었다. 이코테 예제에서의 'graph'는 하나의 노드와 연결된 모든 노드들을 말하는 반면 2606문제의 입력은 하나의 노드와 그와 연결된 하나의 노드를 말해주기 때문에 이코테의 bfs 소스코드를 이용하려면 '하나의 노드와 그와 연결된 하나의 노드'를 '하나의 노드와 연결된 모든 노드들'로 바꿔줘야 했다. 그래서 본 코드에선 함수 'graph_convert'를 이용하여 이코테 소스코드를 사용할 수 있도록 만들었다. from collections import deque n = int(input()) r = int(input()) graph = [] for _ in range(r): graph.append(list(map(int, input().split()..

공부/백준 2023.01.03

백준 1388 파이썬

이코테 dfs/bfs 공부하면서 책에 나온 문제들은 어려워서 백준에 난이도 낮은 문제를 풀어봤다. 처음에 (y== m-1 or graph[x][y+1] == '-') 이 부분을 (graph[x][y+1] == '-' or y== m-1)로 썼는데 indexerror가 계속 떴다. 에러 부분을 읽어봐도 원인을 못찾다가 혹시나 하는 마음에 바꿔보았더니 잘되었다. or 의 순서도 신경써야한다는 걸 배웠다. n,m = map(int, input().split()) graph = [] for _ in range(n): graph.append(list(input())) visited = [] for _ in range(n): visited.append([False]*m) def dfs(x,y): if x =n or..

파이썬 자료구조 - 트리:레벨

전 포스팅에서 레벨은 깊이가 같은 노드들을 의미했다. 이번 시간에는 앞서 구했던 높이를 가지고 같은 레벨의 노드들을 구하려고 한다. 기본적인 과정은 이러하다. 1. 루트 노드와 알고 싶은 레벨을 설정한다. 2. 루트에서 하위 노드들로 내려오며 레벨-1을 한다. 3. 레벨이 1이 되면 현재의 노드들을 출력한다. 아래 코든 전체 레벨을 구하기 위한 코드이고 특정 레벨만 알고 싶으면 3번째 줄의 for문을 이하를 수정하면 된다. def level(self): h = self.height(self.root) for i in range(1,h+1): self._level(self.root,level) print() def _level(self, node, level): if node is None: return ..

파이썬 자료구조 - 트리 : 높이

늦었지만 먼저 트리 관련 용어들을 정리하고 시작한다. 루트(root) : 트리의 최상단에 위치한 노드(해당 그림에선 A) 깊이 : 어떠한 노드와 루트와의 거리 레벨 : 깊이가 같은 노드들의 집합 높이 : 루트와 가장 멀리 떨어진 노드와의 거리 이번 시간에는 높이를 찾아 볼 것이다. 재귀를 이용해 왼쪽 자식으로 끝까지 이동한 다음, 0을 리턴한다. 이는 좌우 하위 노드가 None이면 끝까지 이동한 것으로 생각할 것이다. 거슬러 올라가며 좌우의 하위노드에서 리턴한 값들 중 값을 비교하여 가장 큰 값에 +1을 하여 리턴한다. 코드를 보자. def height(self,node): if node is None: return 0 else: lheight = self.height(node.left) rheight ..

파이썬 자료구조 -트리 : 전위, 중위, 후위 순회

전위 순회(preorder)는 노드 방문 -> 왼쪽 자식 -> 오른쪽 자식 중위 순회(inorder)는 왼쪽 자식 -> 노드 방문 -> 오른쪽 자식 후위 순회(postorder)는 왼쪽 자식 -> 오른쪽 자식 -> 노드 방문으로 스캔한다. A,B,C만 있는 트리를 가지고 설명해보면, 전위 순회 : A->B->C 중위 순회 : B->A->C 후위 순회 : B->C->A 로 움직인다. 조금 더 설명해보자면 전위 순회는 가장 처음에 A를 방문, 중위 순회는 B에서 C로 가는 도중에 방문, 후위 순회는 B와 C를 방문하고 나서 A를 방문한다. 전체 트리를 보며 생각해보자. 전위 순회 : A->B->D->E->H->C->F->G->I 중위 순회 : D->B->E->H->A->F->C->I->G 후위 순회 : D-..

파이썬 자료구조 - Tree

이진 트리(binary tree)는 각각의 노드가 최대 두 개의 자식 노드를 가지는 트리형 자료구조로, 자식 노드를 각각 왼쪽 자식 노드와 오른쪽 자식 노드라고 한다. 아래 코드에선 Node 클래스에서 left를 왼쪽 자식으로, right를 오른쪽 자식으로 표현했다. BinaryTree 클래스는 트리의 맨 위쪽(root)을 정해준다. 각 알파벳에 해당하는 노드를 만든 후, add___로 연결한 다음, 마지막에 root를 정해주는 방식으로 진행할 것이다. class Node: def __init__(self, item): self.item = item self.left = None self.right = None def addLeft(self, Node): self.left = Node def addRig..

html 기초 공부 내용 모음

속성 : 하나의 태그에 여러 개의 속성 가능 공백으로 구분, id=”” class=”” 속성들의 순서는 상관없다 안에 선언된 태그는 부모 태그를 벗어나면 안된다. 이런 느낌. 빈태그 : 시작태그만 존재하고 종료태그 존재하지 않음 > 내용이 존재하지 않음 브라우저가 이미지나 비디오처럼 외부 리소스를 삽입할 때 - 이런 식으로 내용이 없지만 경로를 제시하여 화면에 보이도록 주석 : 내용) - - > Html 구조 Doctype : 어떤 버전으로 작성으로 되어있는지 선언하는거(최상단) Lang 속성 : 언어 코드 Head : 문서의 기본 설정 등 Meta : 해당 문서에 대한 정보인 메타데이터를 정의할 때 사용 Title : 브라우저 탭 바에 나오는 제목 Body : 브라우저 화면에 출력 Head : 문서 내..

초보자 웹서비스 만들어보기 - 크롤링(사진 모으기)

코딩을 가장 빠른 방법은 '어떻게든 서비스를 구현해보라' 라고 하길래 한번 도전해보았습니다. 그래서 처음 목표는 강아지 판별기입니다. Teachable Machine을 이용하려면 사진 데이터가 필요합니다. 그래서 크롤링을 구현해서 사진 데이터를 모으는 것부터 하려고 합니다. 님 유튜브를 참고하여 만들었습니다. *크롤링 : 웹사이트(website), 하이퍼링크(hyperlink), 데이터(data), 정보 자원을 자동화된 방법으로 수집, 분류, 저장하는 것. 주의 : 조코딩님 유튜브에는 크롤링 관련 영상 2개 중 셀리니움을 선택하셔야 합니다. 셀리니움(selenium)이란? 구글에 쳐보니 원어로는 이렇게 되어있네요. [Selenium is a powerful tool for controlling web b..

건대 어메이징 브루어리 후기~

건대 부근에서 군대 동기 만나게 되서 이 기회에 가봤어요. 어메이징 브루어리에 관심을 갖게 된 이유는 스타트업에 관심이 많은 저는 유튜브에 관련 영상 찾아보다가 '어메이징 브루잉' 이라는 스타트업을 알게 되었어요. 그래서 이 스타트업의 맥주를 꼭 마셔보고 싶다는 생각에 저번 포스팅부터 가려고 했어요. 건대점은 8월말까지 운영한다고 하니 빨리 가보시는게 좋을거 같아요!! 왜 내가 가면 다 없어지는거지... 건대점은 탭하우스라 마시고 싶은 맥주에 탭하는 방식이에요. 탭한 후에 맥주를 잔에 따르는 형식이 신기했어요 첨에 어떻게 하는지 몰라서 다른 손님분이 어떻게 하는 지켜봤는데 뭔가 있어보이더라구요 ㅎㅎ 다양한 맥주를 마셔봤는데 어메이징 브루어리의 간판 맥주는 첫사랑이라고 해요. 맥알못이라 맞는지는 모르겠지만..

Review 2021.08.21

KT&G 상상마케팅스쿨 14기 후기

합격 후기를 저번에 썼었는데 이제는 활동 후기를 써보려고 합니다!! 3가지로 분류해서 써볼 생각입니다. 1. 강의 후기 2. 마케팅 제작 후기 3. 기타 등등 1. 강의 후기 다양한 분야의 훌륭하신 분들이 강의를 해주셔서 다양한 관점을 얻을 수 있었어요. 기억에 남는건 듀자매(틱톡스타)였습니다. 듀자매 분들은 SNS로의 마케팅, 더 들어가 틱톡으로의 마케팅을 설명해주셨는데 틱톡은 저랑 많이 안맞더라구요...ㅎㅎ 그래서 참고 영상을 보는 것만으로 정신적으로 많이 힘들었어요. 이렇게 저와 반대의 결을 가지고 있는 SNS라는 걸 새삼 깨닫게 됐어요. '저렇게 의미없고 재미도 없는 영상을 왜 보는거지' 라는 생각이 강의 내내 계속 했는데 문뜩 저도 흔히들 말하는 '꼰대'가 된 게 아닌지 생각되더라구요. 제 관점..