본문 바로가기

분류 전체보기

(469)
[EP 077] 소수의 합으로 나타내는 경우의 수 오일러 프로젝트 77번 문제. 10을 소수들의 합으로 나누는 경우의 수는 다음과 같이 다섯가지이다. 7+3 5+5 5+3+2 3+3+2+2 2+2+2+2+2 소수들의 합으로 나누는 경우의 수가 처음으로 5000을 넘는 수는 무엇인가? from typing import Set, Dict from functools import lru_cache from pprint import pprint primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] @lru_cache() def summations(n: int) -> Set: # print(">"*depth + str(n)) # ..
[EP019] 윤년 1901년 1월부터 2000년 12월까지 중에서 1일이 일요일인 달의 갯수를 구하는 문제. 윤년을 구하는 조건이 주어지고, 그 조건만 잘 써 주고, mod 7을 이용하면 요일을 구할 수 있다. // leap_year.cpp : Defines the entry point for the console application. // /* http://projecteuler.net *____________________________________________________________________ Problem 19 14 June 2002 You are given the following information, but you may prefer to do some research for yourself. ..
Connected Component >>> data = [("ㄱ","ㄴ"), ("ㄴ","ㄷ"), ("ㄷ","ㄱ"), ("ㄱ","ㄴ"), ("ㄹ","ㅁ"), ("ㅂ","ㅅ"), ("ㅇ","ㄹ")] >>> data [('ㄱ', 'ㄴ'), ('ㄱ', 'ㄷ'), ('ㄴ', 'ㄷ'), ('ㄹ', 'ㅁ'), ('ㄹ', 'ㅇ'), ('ㅂ', 'ㅅ')] >>> class ConnectedGroups: def __init__(self): self.groups = [] # groups remain mutually exclusive def add(self, e): set_e = set(e) overlap_index = [] for i, g in enumerate(self.groups): if set_e & g: overlap_index.append(i) if..
[EP 074] f(145) = 1! + 4! + 5! = 145 정수에 대해서 그 정수를 십진수로 표현했을 때, 각 자리수의 계승(팩토리얼)의 합을 취하는 조작이 있다. 어떤 정수에서 시작하더라도 이 조작을 반복하면 어떤 루프를 돌게 된다. 이 루프는 링크에서 말한 것 밖에 없다고 한다. 이걸 알고서... 1000000보다 작은 정수 중에서 그 정수에서부터 시작하여, 조작을 반복하여 만들어지는 수의 집합의 갯수가 60개인 것들의 갯수를 구하란다. #!/usr/bin/env python # http://projecteuler.net/index.php?section=problems&id=74 # factorial list from functools import lru_cache factorial = [1] # 0! = 1 for i in range(1, 10): fact..
[MFC초보] Simple3D 프로그래밍 처음 배웠을 때 즈음에 만들었던 MFC 프로그램이다. 직각사면체를 그린다. 마우스를 움직이면 사면체가, 세 직각축 중 하나의 축을 중심으로 회전한다. 마우스를 클릭하면, 회전축이 바뀐다. 무언가 동적인 입체를 그려보고 싶었고, 한정된 지식과 아이디어로 만들 수 있었던 가장 간단한 프로그램이었다. 처음에는 리눅스에서 n-curse 라이브러리로 텍스트화면에 구현했었었고, mfc 를 처음 배울 때, 그걸 다시 구현해 보았던 것이다. 단순하기 그지없는 프로그램이지만, 혹시 궁금한 사람들을 위해 소스도 첨부해 놓는다.
파이썬초보 : 숫자계단 >>> 몇줄 = 10 >>> ij = [(i, j) for i in range(몇줄) for j in range(i+1) ] >>> for n, (i, j) in enumerate(ij): if i != 0 and j == 0: print() print(n%10, end='') 0 12 345 6789 01234 567890 1234567 89012345 678901234 5678901234
엘라스틱서치 elasticsearch-dsl 에서 시간조건을 주어 검색하는 방법 filter 함수에 "range"를 주어 추려낸다. client = Elasticsearch() timestamp_range = { "@timestamp": { "gte": "2020-11-01", "lt": "2020-11-02" } } s = Search(using=client, index="my-index") .filter("range", **timestamp_range) src : stackoverflow.com/questions/58453236/query-timestamp-range-using-elasticsearch-dsl-py Query timestamp range using elasticsearch-dsl-py I have an elasticsearch range query that I'd..
[파이썬초보] TypeError: 'NoneType' object is not subscriptable not subscriptable 은 var[ ] 와 같이 생긴 부분에서 에러가 났다는 말임. >>> a = 1 >>> b = 22.1 >>> c = 'abc' >>> c[1] 'b' >>> a[1] Traceback (most recent call last): File "", line 1, in a[1] TypeError: 'int' object is not subscriptable >>> b[1] Traceback (most recent call last): File "", line 1, in b[1] TypeError: 'float' object is not subscriptable 위 예제에서 a[1] 에서 'int' object is not subscriptable 이란 에러가 발생했다. a = ..