본문 바로가기

[간단팁] dir 명령으로 파일 찾기. 리눅스 콘솔에서는 find 명령을 이용해서 특정 경로 하위의 파일들을 찾을 수 있다. 윈도우에서는 explorer.exe의 검색기능을 이용하여 그 짓을 할 수 있는데... 소스에서 특정 이름을 가진 파일들이 몇 개나 있는지 텍스트파일로 저장하고 싶었다. 그래서 find 같은 명령어가 없는지 찾아 봤는데. 매우 익숙한 명령어가 이 기능을 했다. 왜 몰랐었나 싶다. F:\temp\clean_src>dir /s /d /b name2search.cpp > result.txt /s 가 subdir까지 찾으라는 스위치, /d 가 세로로 이름을 배열하라는 스위치, /b 가 디렉토리 정보 같은 것을 빼고 이름만 배열하라는 스위치. 좋은 팁을 찾아서 매우 기쁨. cmd에도 꽤 쓸만한 명령어가 있으니 좋군.
[EP 032] 복면산 39 x 186 = 7254 39 x 186 = 7254 란 등식에는 1부터 9까지의 모든 수가 등장한다. A x B = C 꼴이 되고 1부터 9까지의 숫자를 한번씩 모두 사용할 수 있도록 표현되는 C가 되는 모든 C의 합은 얼마일까? (A' x B' = A x B = C 인 C도 있으나 한번만 합산한다.) 무한 for문 겹치기 신공으로 무식하게 풀었다. #!/usr/bin/env python # http://projecteuler.net/index.php?section=problems&id=32 # # Solve # #### abc #### #### x de #### #### ----- #### #### fghi #### # # Or # #### abcd #### #### x e #### #### ----- #### #### fg..
[번역] 대화형 서비스 (from msdn) msdn 문서인데 한글판이 없어서 번역해 본다. 비공식 번역본. ms측의 공식 번역본이 나오면 링크로 대신하겠음. 개인적 용도로 번역한 것이지만, 저작권에 문제가 있다면 내리겠습니다. 대화형 서비스 서비스는 GUI없이 자동으로 실행되도록 디자인된 콘솔 어플리케이션이다. 그런데, 어떤 서비스는 가끔 사용자와의 상호작용이 필요할 때도 있다.여기선 서비스에서 사용자와 상호작용하는 가장 좋은 방법에 대해 논한다. 중요 비스타에서 서비스는 사용자와 직접 상호작용할 수 없다. 따라서, 아래 언급된 "대화형 서비스 사용하기" 테크닉은 새 코드에는 적용되어서는 안 된다. 서비스에서 사용자와 간접적으로 대화하기 모든 윈도우 버전에서 다음과 같은 테크닉을 사용하여, 사용자와 대화할 수 있다. WTSSendMessage 함..
[EP 102] 삼각형 내부외부 판별 평면상의 3점이 주어졌을 때, 그 3점으로 이루어지는 삼각형 안에 원점이 있는지를 판별하는 과제. 임의로 3점을 1, 2, 3 이라고 했을 때, 원점을 중심으로 1->2 의 뱡향, 2->3 의 방향, 3->1 의 방향이 같다면, 원점은 내부의 점. 방향이 바뀐다면, 외부의 점이다. 좌표가 주어진 두 점의 방향있는 각도의 방향은 두 점으로 만든 정방행렬의 판별식의 부호로 알 수 있다. (3차원으로 확장한 두 좌표의 외적으로 해석할 수도 있음. 동일한 것.) #!/usr/bin/env python # http://projecteuler.net/index.php?section=problems&id=102 # Given 3 points, check if the triangle formed by these # c..
[EP 018] 삼각형 배열에서 지나간 수의 합을 최대로 하는 경로를 구하기 문제에서는 경로를 다 구할 필요는 없었고, 경로합의 최대값만 구하면 되었다. 중간에 어떤 노드까지 거슬러 올 수 있는 모든 경로의 최대값을 알 수 있다고 하자. 한 줄에 대해서 다 안다고 하자. 그럼 그 윗줄의 어떤 노드 A까지 거슬러 올 수 있는 모든 경로의 최대값은, 그 A 아래의 두 노드 각각의 최대값과 A노드 값의 합, 두가지 경우 중에서 결정된다. #!/usr/bin/env python # http://projecteuler.net # Problem 18 # Find a top-to-bottom path which makes the path-sum maximum # Author : DwYoon # Date : 2020 # I reduce the triangle from the bottom. Ea..
[EP0010] 백만이하 소수의 합 특정 수 이하의 모든 소수를 구하는 알고리즘을 비교해 보았다. gen_primes 는 스택오버플로우에서 검색하여 발견한 방법. 에라토스테네스의 방법이 특정수 이하까지의 체를 만들기 위해 메모리를 잡아야 하는 단점이 있는데, 메모리를 덜 잡고 하는 방법이라고 한다. 이해를 하려면 좀 더 들여다 봐야하겠으나, 내 방법보다 훨씬 빠르게 나왔다. (무식하게 메모리 잡고 하는 방법보다는 약간 느렸지만) 커멘트로 써 놓은 테스트 결과는 천만으로 한 것. 백만일 때의 결과는 각각 3.1초, 3.3초, 1.3초, 1.5초. import time import functools from tqdm import tqdm def log_elapsed(func): @functools.wraps(func) def newfunc(*..
[EP003] 큰 수의 소수분해 from typing import List import math from time import time from tqdm import tqdm def get_primes_under_siev(n: int) -> List[int]: root_n = int(math.sqrt(n)) siev = {} siev[0] = siev[1] = 0 siev[2] = 1 for i in range(2, root_n + 1): # print(i) if siev.get(i, 1): for j in range(i + i, n + 1, i): siev[j] = 0 # print(siev) primes = [n for n in range(2, n + 1) if siev.get(n, 1)] return primes def facto..
[프린터] FilterGraphics 래스터데이터 조작 출처 번역 : DwYoon 최종수정일 : 20080215 From: "Ashwin Needamangala" References: Subject: Re: how to catch EMF spool file Date: Fri, 25 Oct 2002 17:46:41 -0700 Message-ID: There are APIs provided by GDI for handling EMF files. For example, you could use GdiGetSpoolFileHandle in order to capture the spool file of a particular print job. Refer to the section titled "Using GDI Functions for Print Processors..