분류 전체보기
[Python] 1205 List Comprehension(리스트 표현식) 및 문자열, 백준 2869번
python 리스트 comprehension 표현식 arr = [i for i in range(10)] -> [0 1, 2, 3, 4, 5, 6, 7, 8, 9] 생성. 이때 range대신 시퀀스 들어가도 가능. 뒤에 if문 붙여서 [i for i in range(10) if i % 2 == 0] -> [0, 2, 4, 6, 8] 생성. for문 여러 개 중첩 가능. 예) 2단 ~ 9단 리스트 만들 시 [i * j for i in range(2, 10) for j in range(1, 10)] 하면 i가 2부터 9까지 반복될 때 각각 j 가 1부터 9까지 반복됨. 인셉션처럼 갈수록 반복문이 깊어지는 것. 문자열 응용하기 .replace() '문자열'. replace('원래 문자열', '나중 문자열') -..
[Python] 1202
몰랐던 기능들 ord() -> 문자 => 아스키코드 변환 chrd() -> 아스키코드 => 문자 변환 .isalpha() -> 알파벳으로만 구성되었는지 확인 find() 함수 -> index()와 동일한 기능. 대신 값이 없으면 -1을 반환하고(index는 ValueError뜸), index와는 다르게 리스트, 튜플에서 사용 불가. 문자열에서만 사용가능함. (https://ooyoung.tistory.com/78 참고함) 주의할 점들 input = sys.stdin.readline().split() -> .split() 넣어줘야 뒤에 개행 문자 사라짐(안하고 str쓰려하면 개행문자 오류남) 대신 sys.stdin.readline()은 무조건 리스트 안에 문자열이 들어감. reversed()는 기존 변수는..
[Python] 1201 공부한 점들
몰랐던 점들 arr.append(a) -> 가장 많이 쓰는 방법, 리스트에 a요소 하나를 추가할 때 사용. arr.extend(arr_1) -> arr에 다른 리스트 추가함. 리스트에 리스트를 추가할 때 사용. arr.insert(a, b) ->arr의 a 인덱스에 b를 추가함. 리스트 중간에 요소 하나를 추가할 때 사용. ** 또는 arr[3:3] = [1, ..., 10]과 같이 슬라이싱을 이용해 리스트 중간에 리스트를 끼워 넣을 수 있음. 인덱스를 조작해 일부분을 대체하는 것도 가능. *** arr[len(arr):] = [1, ..., 10] -> extend와 동일한 기능. -> 슬라이싱을 이용해 다양한 작업 가능. 기타 다양한 기능들 arr.count(a) -> 리스트 안에 요소가 얼마나 들어..
외국인의 한국 국적의 취득 요건
다음 홈페이지를 참고하면 다음과 같다. https://www.gb.go.kr/open_content/tips/kor/page.jsp?largeCode=lifestyle&mediumCode=sojourn&smallCode=nationality&LANGCODE=KorTips > 외국인 배우자의 국적취득 별도로 법무부장관의 귀화허가를 받아야 하며1) 한국인 배우자와 혼인한 상태로 2년 이상 계속하여 대한민국에 거주 하거나2) 혼인기간이 3년 이상이고 한국에 1년 이상 계속 거주하여야 합니다. > 혼인신고를 하지 않고 동거할 때, 국적취득 한국인 배우자의 호적관서에 혼인신고를 하고 호적등본에 혼인사실이 등재된 외국인 배우자만이 혼인에 기한 간이귀화(혼인귀화) 신청을 할 수 있고, 동거하는 경우는 국내에 계속하여..
유전 알고리즘으로 사이클로이드 유도하기 [2]
지난 포스팅에서는 유전 알고리즘을 통해 사이클로이드를 유도하는 법을 알아보았다. 하지만 교차 및 돌연변이 방식, 기울기를 정하는 방식, 정규화 방법 등 아직 개선점이 많이 필요한 모습을 보였다. 그중 무엇보다 적합도가 93% 이상 올라가지 않던 문제가 가장 해결하기 어려웠다. max_gen = 1000 num = 100 min_m = -10 mut_chance = 0.3 mut_rate = 0.4로 돌린 결과이다. 사진과 같이 최고 적합도는 크게 올라가지 않는 모습을 보여준다. 여기서 필자는 교차 및 돌연변이 방법에 문제가 있다고 생각해 해당 방법을 고민하던 중, 해당 프로그램을 보던 한 친구가 구간의 길이를 줄여보자는 아이디어를 건의했다. 현재 유전 알고리즘은 가로 5π, 세로 10인 공간 속에서 돌아..
유전 알고리즘으로 사이클로이드 유도하기 [1]
Making Cycloid by Genetic Algorithm 0. 개요 사이클로이드가 최소 강하 곡선인 이유를 탐구하다, 해당 내용을 보고 사이클로이드를 유도하는 방법을 알게 되었다. https://suhak.tistory.com/88 사이클로이드(cycloid) 사이클로이드란? 구르는 원 위에 있는 한 정점이 그리는 자취를 사이클로이드라고 부른다. 위키백과로 가기 그림에서 원점과 접해있던 반지름이 1인 원이 $x$축을 따라 $t$만큼 굴러갔을 때 원점 suhak.tistory.com 또한 여기서 사이클로이드를 그릴 수 있었는데, 해당 코드는 다음과 같다. from math import sin, cos, pi import numpy as np import matplotlib.pyplot as plt ..
AI 고카트 프로젝트
2021 1~3분기에 진행한 자율주행자동차 고카트 관련 프로젝트 관련 자료 https://docs.google.com/presentation/d/144NoYEj8JKp7Xl4ne61ku0VEC3JU_nx5QMvnT97njCc/edit?usp=sharing 2022 고카트 제본용 2021 자율주행 고카트 활동 모음집 - OSOF docs.google.com https://docs.google.com/document/d/1J2r7AjHS0hlbt6csHbm3i8Jkc_W-9UbOgE2bfjVJsCA/edit?usp=sharing Teachable Machine을 이용해 자율주행자동차 만들기 Google Teachable Machine을 활용한 사물인식과 아두이노 시리얼 통신을 통한 결과 출력하기 저자 : 한..
다문화가정 지원 프로그램
1. 개요 '대한민국 국민'이라 함은 한국에서 출생하였거나 한국 부모를 두는 등 대한민국 국적을 취득한 사람을 지칭한다. 나는 여기서 외국인 노동자들이나 다문화가정 출신의 사람들이 차별받는 점을 인식하고, 그들에게도 평등한 권리 및 지위가 있다는 점을 알리기 위해 해당 글을 쓴다. 2. 법적 근거 대한민국 헌법을 참고하면 https://www.law.go.kr/lsEfInfoP.do?lsiSeq=61603# 국가법령정보센터 | 법령 > 본문 - 대한민국헌법 대한민국헌법 [시행 1988. 2. 25.] [헌법 제10호, 1987. 10. 29., 전부개정] www.law.go.kr 제1장 총강 제1조 ①대한민국은 민주공화국이다. ②대한민국의 주권은 국민에게 있고, 모든 권력은 국민으로부터 나온다. 제2조 ..