전체 글

이번 포스팅은 www.acmicpc.net/problem/2588 에서 푼 것을 토대로 작성했습니다. 사칙연산과 입출력의 마지막 문제인 2588번 곱셈 문제입니다. 보시면 a와 b를 곱하는데 곱셈의 진행을 하나씩 코드화 하여 (3),(4),(5)를 출력으로 나오게 하는것이 문제입니다. (6)이야 그냥 * 를 쓰면 문제가 없는데 (3),(4),(5)는 1,10,100의 자리를 하나씩 구해 곱해야 합니다. a = int(input()) b = int(input()) print(a*(b%100%10)) print(a*(b%100//10)) print(a*(b//100)) print(a*b) 저는 일단 맨처음 생각 했던것은 자릿수를 나눗셈과 몫을 구하는 연산으로 구해보자고 생각하여 하나씩 구해서 출력을 나오게 ..
코드 연습하는 것은 모두 백준(www.acmicpc.net/)에서 하고 있습니다. 이번 10430번 나머지 문제는 출력에 요구하는 것처럼 나오게 하면 됩니다. a,b,c = map(int, input().split()) print((a+b)%c) print(((a%c)+(b%c)%c)) print((a*b)%c) print(((a%c)*(b%c)%c)) 처음에는 이렇게 a%c나 b%c 전부에 ()를 쳐서 실행해봤는데 틀렸다고 하길래 시간이 초과됐나 싶어서 밑에 코드처럼 만들었습니다. a,b,c = map(int, input().split()) print((a+b)%c) print((a%c+b%c)%c) print((a*b)%c) print((a%c*b%c)%c) input()으로 입력을 받고 split(..
코드 연습하는 것은 모두 백준(www.acmicpc.net/)에서 하고 있습니다. 그 전의 글인 고양이와 이번 10869번 사칙연산 사이의 코드는 쉬워서 넘어갔습니다. 이번 10869번 사칙연산 문제는 두 개의 수를 입력받고 예제 출력처럼 나오게 하는 문제입니다. A,B = map(int, input().split()) print(A+B) print(A-B) print(A*B) print(int(A/B)) print(A%B) 저는 예제 입력을 보고 그냥 input()을 넣으면 되는 줄 알고 split()을 안 해 계속 틀렸습니다ㅠ 밑의 코드와 같이 map으로 표현하거나 그냥 input(). split()을 사용하여 코드를 진행하여도 됩니다. 파이썬의 경우 / (나누기)를 썼을 때 int형이 아니라면 자동..
백준 알고리즘 사이트 예제 중 10171번 고양이를 코딩해보았습니다. 코딩을 하는 중 파이썬은 역 슬래쉬 하려면 \\을 두 번 해야 한다 해서 두 개 다 실험해 보았더니 같은 결과가 나오는 것을 볼 수 있었습니다. 이유가 무엇인가요? ㅠㅠ 그리고 \ 와 "를 붙였을 때 문자열 에러가 발생하는데 이것도 이유를 잘 모르겠네요.. 공부가 더 필요할 것 같습니다.
· 영상처리
이번 포스팅은 책 '파이썬으로 만드는 OpenCV 프로젝트'를 보고 공부한 내용을 바탕으로 만들었습니다. 혹시나 틀린 부분이나 수정해야 할 부분이 있다면 댓글 남겨주세요! 컨투어(contour)는 우리말로 윤곽선, 외곽선 등으로 말합니다. 영상처리에서는 같은 픽셀을 갖는 지점 즉 같은 색상이나 밝기의 연속된 점을 말합니다. 컨투어(contour) 연산 OpenCV에서 contours, hierarchy = cv2. findContours(src, mode, method)로 지원합니다. Python 3.x 이상 버전에서는 인자를 2개로 받으므로 유의 바랍니다. cv2.findContours()의 src 인자에 바이너리 이미지를 넣으면 해당 좌표를 가지는 Numpy 배열을 리스트로 반환 mode는 컨투어를 ..
· 영상처리
이번 포스팅은 책 '파이썬으로 만드는 OpenCV 프로젝트'를 보고 공부한 내용을 바탕으로 만들었습니다. 혹시나 틀린 부분이나 수정해야 할 부분이 있다면 댓글 남겨주세요! 모폴로지(morphology)는 노이즈, 구멍 제거, 경계 붙이기 등의 연산에 효과적입니다. 대표적인 연산은 침식, 팽창이며 둘을 결합한 열림과 닫힘 연산이 있습니다. 침식(erosion) 연산 침식 연산은 1로 채워진 커널을 입력 영상에 적용하여 커널 안에 전부 1로 들어가지 않으면 0으로 반환합니다. OpenCV 에서 커널 생성을 위해 함수를 제공하며 cv2.getStructuringElment()이며 MORPH_RECT는 사격형으로 커널을 만든다는 의미이며 (6,6)은 커널의 크기를 의미합니다. 침식 연산을 위한 함수는 cv2.e..
· 영상처리
이번 포스팅은 책 '파이썬으로 만드는 OpenCV 프로젝트'를 보고 공부한 내용을 바탕으로 만들었습니다. 혹시나 틀린 부분이나 수정해야 할 부분이 있다면 댓글 남겨주세요! 영상 처리는 새로운 영상을 얻기 위해 기존 영상의 픽셀 값에 연산을 하여 새로운 픽셀 값을 얻는 작업입니다. 이 책에서 기존 픽셀 값과 주변 픽셀들의 값을 활용하여 얻는 방법인 공간 영역 필터를 사용하여 새로운 픽셀 값을 얻는 방법을 알려줍니다. 경계(edge) 검출 영상에서 경계(edge)를 검출하기 위해서는 픽셀 값이 갑자기 변화하는 곳을 찾아야 합니다. 이는 연속된 픽셀 값을 미분한다면 알 수 있습니다. 픽셀은 연속 공간이 아니므로 이산화 하여 근사 값으로 구해야 합니다. 미분 근사값은 붙어 있는 픽셀 값을 빼면 됩니다. 이것을 ..
· 영상처리
이번 포스팅은 책 '파이썬으로 만드는 OpenCV 프로젝트'를 보고 공부한 내용을 바탕으로 만들었습니다. 혹시나 틀린 부분이나 수정해야 할 부분이 있다면 댓글 남겨주세요! 영상 처리는 새로운 영상을 얻기 위해 기존 영상의 픽셀 값에 연산을 하여 새로운 픽셀 값을 얻는 작업입니다. 이 책에서 기존 픽셀 값과 주변 픽셀들의 값을 활용하여 얻는 방법인 공간 영역 필터를 사용하여 픽셀 값을 얻는 방법을 알려줍니다. 컨볼루션(convolution) - 컨볼루션 연산은 커널(kernel)을 만들어 각 요소와 상응하는 입력 픽셀 값을 곱하여 모두 합한 것을 결과 값으로 결정하고 이것을 마지막 픽셀까지 반복하는 것을 말합니다. - 그림으로 얘기한다면 (0x4)+(0x0)+(0x0)+(0x0)+(1x0)+(1x0)+(0..
우준세
준세 단칸방