울릉도는 일주도로가 있어 차량으로 일주관광을 쉽게 할 수 있다. 패키지 투어에 포함된 일주관광으로 섬을 한 바퀴 둘러볼 수 있었다. 처음 간 곳은 관음도. 이 곳은 울릉도와 연육교가 만들어져있어 쉽게 가볼 수 있다. 패키지 여행 특성상 시간이 좀 짧아 뛰어다녔다는 게 흠이긴 했지만... 일단 건너편의 삼선암 쪽을 보면서 한 컷 찍고... 반대쪽에 있는 죽도를 배경으로 한 컷 찍고... 이제 연육교 너머에 있는 관음도로 고고씽. 열심히 관음도를 뛰어다니다 멋진 풍경이 있어 한 컷. 저 섬이 방송에서도 몇 번 보여준 죽도다. 다음으로 향한 곳은 나리분지. 바로 울릉도 화산 폭발의 시발점인 곳이다. 여기서 울릉도라는 섬이 만들어졌다는 뜻. 전망대에선 인증샷을 찍어야 하는 거라 배웠으니 한 컷. 나리분지에서 가..
우리나라 땅의 서쪽, 북쪽 끝인 백령도와 남쪽 끝인 마라도를 다 가봤지만 동쪽 끝 독도를 가보지 못했다. 세번 정도 기회가 있었는데, 죄다 기상 불량으로 중간에 포기했었다. 이번에 각잡고 다시 독도에 도전해보기로 했다. 독도를 들어가려면 일단 울릉도를 가야 한다. 울릉도 가는 배편은 강릉, 묵호, 후포, 포항 네 군대에서 출발한다. 우리가 선택한 건 강릉항에서 출발하는 것. 지금까지의 여행 패턴과 다르게 패키지 여행을 가기로 했다. 울릉도를 예전에 갔던 기억에 운전을 별로 하고 싶지는 않은 곳이었기도 했고. 강릉 배편은 아침 8시에 강릉항에서 출항한다. 다시 말해 새벽 4시엔 일어나서 운전하든가 아예 전날 강릉에서 1박 하는 것 중 선택해야 한다는 것. 우린 깔끔하게 새벽에 출발하는 것을 선택했다. 우여..
최근 인텔 12세대 CPU가 발표되었지만, 인텔의 주장과는 달리 성능의 엄청난 향상을 보여주진 못하고 있다. 성능 향상폭은 크지 않은데, 보드도 새로 사고, DDR5도 새로 사야할만한 필요성은 전혀 느껴지지 않는다. 물론 DDR5도 언젠간 수율이 올라가고 기술력이 안정화되어 DDR4를 대체하겠지만, 아직은 아닌 것 같다. 라이젠 계열을 계속 쓰는 게 낫다고 판단해서 없는 돈에 영혼 한 방울까지 끌어모아 라이젠 5900X로 업그레이드 했다. 메인보드도, 메모리도 아무것도 살 필요 없이 CPU만 사면 되니 가성비는 일단 비교할 수 없이 높고... 일단 떠나보내는 CPU(및 그 외에 안 바뀌는 시스템) 사양은 아래와 같았다. 그리고 새로 영입한 CPU는 이렇다. 당연히 새로운 CPU가 성능이 좋겠지만, 어느 ..
윈도우 11도 32비트는 지원하지 않고 64비트 환경만 지원하더니, 드디어 비주얼 스튜디오도 64비트로 넘어갔다. 16비트에서 32비트로 넘어갈 때도 눈 깜박할 사이에 넘어갔는데 64비트로의 전환 역시 신속하게 진행되고 있다. 이전에 VS2019에서 돌리던 프로젝트들을 하나씩 VS2022로 이관했는데, 이 과정에서 묘한 컴파일 실패가 발생했다. 아래의 코드를 32비트 릴리즈 모드에서 컴파일하면 환경을 어떻게 설정해도 컴파일이 중단된다. 64비트나 디버그 모드에선 이상 없이 잘 되지만, 딱 32비트 릴리즈 모드에서만 컴파일러 자체가 멈춘다. 식을 좀 더 단순하게 써보라는 조언만 남기고 그냥 중단된다. #pragma loop(hint_parallel(0)) #pragma loop(ivdep) for (int..
산지 두달도 안 된 NOTHING ear(1)이 동작을 하지 않았다. 무선충전기 위에 장시간 올려두었더니 열이 많이 발생했는데, 아마도 그 때부터 맛이 가고 있었던 것 같다. 유선 충전기에 연결해도 아래 처럼 램프가 들어오지 않았고... 혹시나 다른 무선 충전기 위에 올려봐도 증상은 마찬가지였다. 갑갑해서 절차에 따라 AS 요청을 했다. 처음에는 기계 번역 메시지가 응답을 줬는데, 바로 다음 메일부터는 사람이 응답을 했다. 아마도 불필요한 스팸 메일 등을 필터링하는 절차인 듯. 교환인지 환불인지를 선택하라고 해서 두말 않고 교환을 선택. 여러모로 마음에 드는 제품이라 굳이 환불할 생각은 없기 때문. 절차에 따라 시리얼 번호를 포함한 각종 정보를 보냈고, 택배 기사님이 오셔서 제품을 수거해가셨다. 그리고 ..
아직까지 이 클래식한 제품을 사용하는 지인의 헬프 요청이 접수됐다. 이제 사진들 다 빼고 정리하려는데 딱 맞춰 전원이 들어오지 않기 시작했다고. 확인해보니 케이블을 연결하면 사과 로고에서 멈추고 제대로 켜지지는 않았다. 이런 경우는 거의 배터리 수명이 다 한 경우가 대부분이라 배터리를 범인으로 가정하고 작업 시작. 우선 바닥을 확인해야 된다. 아이폰4는 하단 나사가 사각 또는 오각으로 출시되었다. 알리 익스프레스를 뒤져보면 아직도 아이폰4 배터리를 꽤 저렴한 가격에 판매하고 있다. 국내 오픈마켓에도 있기는 한데 가격이 너무 비싸 패스. 도착한 택배를 뜯어보면 아래와 같이 구성되어 있다. 배터리를 싼 스티로폼을 벗기면 아래와 같다. 배터리 용량이 2800mAh라고 표기되어 있다. 이게 정확한 스펙이 맞다면..
비디오 영상처리와 인코딩은 온갖 삽질의 끝없는 반복으로 이루어진다. 그리고 그 중엔 모르는 사람이 보면 도저히 이해를 할 수 없는 작업들이 넘쳐난다. VirtualDub2를 이용하면 무압축 RGB 포맷의 AVI 동영상을 만들 수 있다. YUV 변환 따윈 전혀 하지 않은 그야말로 무식한 RGB raw 데이터가 저장된 비디오 파일을 손쉽게 만들 수 있는 것이다. 물론 이런 파일은 대부분의 사용자들에겐 파일 크기만 무식하게 크지 아무 쓸모도 없다. 하지만, 이 바닥에서 일을 하다보면 반드시 이런 파일을 만들어야 할 때가 틀림 없이 나타난다. 각설하고, VirtualDub로 이 작업을 하면 문제가 하나 있는데, 많은 입력 파일을 배치 처리하기가 어렵다는 것이다. 물론 배치 처리 기능이 있긴 한데, 결국 일일이 ..
새 버전이 나왔습니다. 새 버전을 사용해주시기 바랍니다. 오류를 수정하고 다양한 성능 개선이 반영된 버전을 공개한다. 아래 링크에서 다운받을 수 있으며, 언제나 그렇듯 x86/x64/avx2 버전이 함께 들어있다. password: teus.me ▲ 히스토리 2021.7.30: 4.21.07 r3836 공개 - Scintilla 라이브러리를 5.1.1로 업데이트(관련 링크) - Windows 11에서는 Notepad 대신 사용 기능이 동작하지 않도록 수정 - CoffeeScript 관련 lexer 등을 정식 버전의 것들로 대체(관련 링크) - 오류 수정: Shift+PageDown이 잘못 동작하던 오류 수정(관련 링크) 2021.9.12: 4.21.07 r3891 공개 - About 창의 Donate 버..
처음 구매했을 때는 꽤 삽질이 있었지만, 이후 대단히 만족했던 MainConcept의 HEVC 인코더가 2.0으로 업데이트 됐다. 재빠르게 업데이트한 뒤에 릴리즈 노트를 읽어보니 뭔가 변화가 있었다. 일단 MainConcept의 SDK 버전이 12.x에서 13.1로 업데이트 되었다. 이 부분은 13.x의 업데이트 내역이 공개되어있지 않아 그러려니 하지만, 뭐가 달라져도 달라졌겠지... 중요한 것은 인자가 하나 바뀌었다는 것이다. 그래서 똑같이 바꾼 뒤에 인코딩을 해보니... 실패했다... 또 다시 시작이다 싶어서 다양한 테스트를 돌려보고, 오류 리포트를 준비하고 있었다. 그러다 뭔가 쌔한 느낌에 인코딩 확장자를 mkv에서 mp4로 바꿔보니 아무 문제 없이 잘 인코딩된다. 결론은 HEVC Encoder P..
JPEG 포맷은 표준안이 나온지 30년이 되어가지만, 여전히 널리 사용되는 포맷이다. 심지어, 차세대 JPEG을 표방하는 코덱이 좀 나왔었는데, 다 나가떨어질 때까지 JPEG는 버티고 있다. 물론, 영상을 전문으로 하시는 분들께는 그냥 한물 간 포맷이겠지만, 현실세계에선 그렇지 않다. JPEG는 압축률이 꽤 뛰어나다는 장점이 있지만, artifacts라 흔히 통칭되는 노이즈가 가장 큰 약점이다. 그리고, 나온지 오래된 포맷답게 이 artifacts를 없애는 방법들이 꽤 검토되었고, 대표적으로 다음 두 가지 방식이 있다. 1. 이미지 자체에서 artifacts로 인식되는 영역 제거 가장 손쉽게 접근한 방식은 파일을 읽은 뒤에 각 픽셀을 인접 픽셀들과 비교하는 것이다. Paint.NET의 플러그인 중 하나인..
Visual Studio 2022의 Preview 버전이 4.1까지 나왔다. 이제 충분히 안정화되었을 것이라 보고 VS2019로 만들었던 프로젝트들을 하나씩 이관하기 시작했다. 언제나 그렇듯 대부분의 프로젝트들은 별 문제 없이 잘 이관되었고, 몇 개만 문제를 일으켰다. 그리고, 언제나 그렇듯 이런 프로젝트들은 해결책 찾기가 너무나 어려웠다. 그중 가장 고갱님 당황하셨어요? 시추에이션은 Paint.NET 프로젝트. C/C++ 프로젝트와 달리 별다른 마이그레이션도 필요없을 줄 알았는데, 현실은 언제나 시궁창... 그렇지 않아도 무슨 얘긴지 모르겠는데, 기계번역된 결과는 너무나 읽기 어렵다... 좌우지간 버전 간의 충돌이란 얘긴데... 1. 안일한 불의의 길 Paint.NET 포럼을 뒤져보니, 이미 많이 벌어..
스포일러 경고! 이 글은 스포일러만으로 구성되어 있습니다. 영화를 아직 감상하지 않은 분들은 감상 후에 읽는 것을 추천합니다. "You only live twice: Once when you're born, And once when you look death in the face." — You Only Live Twice, Chapter 11 우리는 두 번 산다: 한 번은 태어났을 때, 그리고 한 번은 죽음에 직면했을 때. — 소설 , 제11장 1. 소설에서 구현하지 못한 설정들의 복귀 이번 [노 타임 투 다이]는 [스카이폴]에 이어 제목이 소설과 전혀 관련이 없는 크레이그의 두 번째 007 영화다. 하지만, 이번 영화는 제목과 달리 원작 소설의 코드를 드디어 제대로 복구해낸 영화이기도 하다. 이전 포스..
개봉일 저녁에 후다닥 보고서 썼던 감상기를 조금 보완한 글이다. 스포일러는 없음. 원문은 익스트림무비에 올린 글임: https://extmovie.com/movietalk/68897329 1. 올드 팬들을 위한 오마주 007영화는 전작과의 연계성을 강화하기 위해 오마주 씬을 넣는 전통이 있다. 그런데, 아마도 [어나더데이]에서 부터라 생각되는데... 007 영화들에서 전작들에 대한 오마주가 선을 넘기 시작했었다. 그러다보니 전작들에 대한 오마주를 보면 오히려 피곤해지기 시작했고... 이 영화는 (미리 예상됐다시피) [여왕폐하의 007]의 오마주 격인 영화이다. 대사로 이를 표현하는 것도 모자라 엔딩 음악이 그 "루이 암스트롱"의 "We Have All The Time In The World"이다. 그럼에..
실망으로 가득 찼던 지난 포스팅 이후 다시 한 번 NOTHING ear(1) 구매에 도전했다. 당시는 무x사에서 한정판매하는 것이었고, 이 글을 쓰는 지금까지도 거기서 구매에 성공했다는 글은 여전히 볼 수 없다... 며칠 뒤 본진 홈페이지에서 판매를 시작할 것이라는 메일을 받고 다시 한 번 도전했다. 이번엔 그 때처럼 시간에 맞춰 대기하지도 았았고, 그냥 생각날 때 접속하여 구매에 성공했다. 그리고 바로 다음 날 택배가 도착했다. 택배 상자에는 한자가 잔뜩 적혀있었지만, 인천에서 발송됐다. 박스를 뜯으니 거대한 에어캡으로 안전하게 포장되어 있다. 에어캡을 벗기니 다시 한번 스티로폼에 쌓인 물건이 나온다. 그리고, 짜잔! 바로 이것이 NOTHING ear(1)의 상자이다!!! 상자 뒷면에는 충전 관련 정보..
투명한 디자인과 액티브 노이즈 캔슬링에 더해 저렴한 가격까지 갖춘 NOTHING ear(1)이 한달전 영국에서 출시됐다. 가격이 무려 99달러로 책정돼 업계 끝판왕 에어팟 프로의 ⅓ 수준인데다 디자인이 훌륭해서 온라인에서 화제가 됐었다. 리뷰들을 보면 어떤 리뷰어는 과장광고일 뿐이라 하고, 어떤 리뷰어는 가성비 끝판왕이라고도 한다. 어쨌거나, 디자인이 예쁜 건 맞고, 가격 대비해서 부족한 제품은 아닌 것 같다. 국내 발매를 기다리던 중에 무x사에서 선발매한다는 소식이 들려왔다. 그런데, 무x사의 기사는 처음부터 뭔가 쎄했다. 낫싱은 안드로이드의 아버지로 불리는 앤디 루빈이 구글을 떠나 처음으로 론칭한 이라니... 앤디 루빈이 구글을 떠나 처음으로 설립한 회사는 에센셜이다. 참고로, 구글에서의 그의 부적절..
아주 오래 전에 썼던 간단한 글에서도 비슷한 소재를 다뤘는데, 단순히 컴파일하는 것에 그쳤었다. 좀 다양한 라이브러리의 적용은 Zeranoe님이 다 알아서 해주셨고... 참고로, AAC 인코더는 여전히 최종 보스 솔루션이 존재하지 않으며, 선택지마다 조금씩 다른 특성이 있다는 점도 생각해야 한다. 1. 전체적인 품질은 iTunes가 가장 훌륭하다는데, 모두가 쓸 수 있는 건 아님 2. Nero AAC 인코더는 2010년으로 개발 및 수정보완이 완전히 중단됨 3. 원조 맛집 Fraunhofer FDK AAC는 오픈 소스이나 내가 임의로 실행파일을 배포할 수는 없음 iTunes의 품질이 가장 좋다는 평이 지배적이지만, 외국 포럼들을 다니다 보면 libfdk가 좋다는 평도 보인다. 나는 이중 1, 2번을 그동..
라즈베리파이에서 미디어를 재생하기 위해 내가 선택한 솔루션은 LibreELEC이다. 근간이 되는 Kodi가 올해 2월에 19.0으로 업그레이드되며 Matrix라는 이름을 가졌는데, 이제 실제로 파이에서 적용할 수 있는 LibreELEC 10.0.0이 정식으로 공개되었다. 이번 LibreELEC 업그레이드는 기능보다 라즈베리파이 4의 성능을 극대화하기 위한 코어 기능의 향상이 메인인 듯 하다. 리눅스 커널 등을 업그레이드하며 HDMI 출력을 4Kp30까지 올렸고, HDR 출력을 지원하며 HEVC HW 디코딩을 제대로 활용한다. 덕분에 라즈베리파이 Zero 등에 대한 지원은 중단되었다. 커다란 변화 때문인지 업그레이드보다는 완전 재설치를 권장해서 SD 메모리를 밀고 다시 깔아봤다. 하는 김에 설정 파일을 수..
MCU 페이즈 4의 두 번째 영화인 [샹치와 텐 링즈의 전설]이 개봉되었다. 이 영화는 마블 코믹스 동명의 작품/캐릭터인 샹치를 기반으로 한 영화이다. 가장 눈에 띄는 점은 마블의 다른 장르/문화와의 결합이 이제 아시안계 캐릭터까지 확장되었다는 것이다.. 이 영화는 헐리우드 기존 영화들의 오리엔탈리즘을 완전히 걷어내고 동양적 정서에 집중한다. 아콰피나가 연기하는 케이티의 가족은 동양인(중국인) 이민 1.5~2세대 정도의 정서를 꼼꼼하게 묘사한다. 전통을 중요시하는 세대와 전통에 무관심한 세대가 함께 사는데, 그 무관심한 자녀도 중국 이름을 갖는 설정은 참으로 현실적이다. 웬우와 샹치의 관계도 이 흐름과 함께 한다. 웬우 캐릭터는 천년을 살아온 전통 그 자체이고, 샹치는 전통을 버리고 독립하는 젊은이를 상..
새 버전이 나왔습니다. 새 버전을 사용해주시기 바랍니다. 온라인에서 이미지의 크기를 줄여주는 많은 사이트들이 있다. TinyPNG가 가장 잘 알려져있는데, 최근에는 여기서 JPEG도 지원하도록 기능이 추가되었다. 비슷한 기능을 하는 PunyPNG도 있다. 여기는 JPEG, GIF까지도 지원해준다. 그런데, 이런 사이트를 통해 이미지를 압축하려면 내가 가진 이미지를 업로드해야 한다는 근본적인 문제가 있다. 왜 내 개인 이미지를 온라인에 올려줘야 되지? 그리고, 그 사이트들이 내 이미지를 다른 목적으로 사용하지 않는다는 보장이 있나? 사실, 이 사이트들이 사용하는 알고리즘은 대동소이 아니, 동일하다. 본 블로그에서도 몇번 소개했던 mozjpeg, ZopfliPNG, pngquant, Gifsicle에 웹 프..
새 버전이 나왔습니다. 새 버전을 사용해주시기 바랍니다. 애플 iOS 11에서부터 적용되기 시작한 HEIF가 조금씩 확산되고 있고, 이제 윈도우10에서도 뷰어를 무료로 제공하고 있기는 하지만, 아직은 윈도우에서 이 포맷을 사용하는 건 불편함이 있다. 보기는 그럭저럭 보지만, 편집을 하려면 그 때부턴 조금씩 뭔가가 복잡해진다. Windows 10의 HEIF 확장 및 HEVC 확장을 활용해서 더욱 빨라진 HEIF→JPEG/PNG 변환기를 공개한다. 오픈소스 프로그램만을 활용하며, 다중코어를 활용하여 최대한 빠르게 변환하는 기존의 기능도 더욱 안정화시켰다. 64비트(avx2) / password: teus.me 32비트 / password: teus.me 이 프로그램은 이전 버전과 마찬가지로 HEIF를 jpe..
불세출의 축구 스타 차붐이 처음 독일에서 활동할 때 유일하게 입맛에 맞는 요리를 찾은 게 학센이었다. 쉽게 생각하면 독일식 족발 같은 것... 나도 독일에 출장이나 여핼 갈 때 종종 사먹었던 음식이다. 심지어 짱이 생일 때도 가서 먹었던... 최근에 거제에 일이 있어 몇달간 내려와서 일을 하는 중인데, 무려 학센을 제대로 하는 식당이 여기 있었다. 학센을 먹으려면 역시 됙일 맥주를 함께 먹어야 제맛이다. 사장님께서 리덴부르거(Riedenburger)를 추천해주셔서 바로 주문. 밀맥주인데, 자주 먹던 에르딩어보다도 더 묵직한 맛이 일품이다. 이윽고 나온 학센. 보통은 3인 메뉴로 주문하는데, 혼자 온 나에겐 특별히(?) 좀 작은 놈을 저렴하게 만들어주셨다. 학센은 그야말로 겉바속촉의 교과서다. 겉은 바삭해..
프로젝트 오일러의 71~73번 문제는 비슷하게 생겼는데, 실제로는 서로 상당히 다른 문제들이다. 서로 비교해보면 많은 생각을 하게 하는 문제들이다. 71번 주어진 범위의 기약분수 중에서 \( \frac {3}{7} \)보다 작으면서 가장 큰 분수의 분자를 찾는 문제다. 주어진 범위가 무려 백만까지므로 무식하게 보면 백만(Mega)×백만=1Tera번 루프를 돌리면 답을 찾을 수 있다. 하지만, 조금만 생각해보면 각 분모별로 \( \frac {3}{7} \)에 가까운 기약분수 하나씩만 비교해보면 된다. 간단하게 만들어보면 아래와 같다. 최대공약수 코드는 앞 포스팅의 코드를 활용. #include #include #include size_t GCDfast(size_t x, size_t y) { if (!x |..
학교 수학 시간에 안 가르치는 것 같은데, 최대공약수를 구하는 알고리즘이 유클리드 호제법이다. 인류 최초의 알고리즘이라고도 알려져있기도 하다. 개념은 단순하다. 서로를 나누어 나머지를 계속 구하는 것. 좀 더 원시적(?)으로 구현하려면 나머지(나누기) 대신 빼기로 구현해도 된다. 보통은 아래와 같은 코드를 사용한다. size_t GCD(size_t x, size_t y) { while (y) { x %= y; if (!x) { return y; } y %= x; } return x; } 그런데, 조금 뒤져보니 Binary GCD라는 알고리즘이 있다. 짝수인 경우 2로 계속 나누어 나눈 횟수를 미리 세어둔 뒤 유클리드 호제법을 사용하는 방식이다. 이 알고리즘은 CPU 명령을 활용하는 _BitScanForw..
0. 윈도우 어플에서의 아이콘 크기 윈도우용 아이콘은 파일 하나에 여러 종류의 크기를 담을 수 있으며, 상황에 맞춰 윈도우가 선택한다. 이게 상식이고, 모든 얘기의 시발점이다. 윈도우 98/2000 까지는 4bpp 아이콘을 주로 사용했지만, XP 이후로는 8bpp/32bpp를 기본으로 한다. 현재 4bpp 아이콘은 단순히 하위 호환성을 위해 존재할 뿐 실제 프로젝트에 적용할 필요는 없다고 봐도 무방. 아이콘 파일의 스펙을 보면 가로/세로 크기는 256이 최대이고, 32bpp 까지만 적용이 가능하다. XP 까진 비트맵 포맷만 지원했지만, 비스타 이후는 PNG 포맷도 적용이 가능하다. 1. 실제로 만들어야 하는 아이콘의 크기들 실제 어플리케이션에서 만들어야 하는 아이콘의 크기는 스택오버플로우에 잘 정리되어있..
익스트림무비의 [모가디슈] 시사회에 당첨되어 이 영화를 조금 일찍 볼 수 있었다. 좋은 기회를 마련해 주신 익스트림무비 관계자들에게 우선 감사를 표한다. 이 영화는 소말리아의 수도 모가디슈에서 실제 발생한 사건을 토대로 만든 작품이다. 비록, 엔드 크레딧에서는 영화는 전부 허구입니다만...을 얘기하지만, 다소 영화적 표현에 가깝다는 느낌적 느낌. 군더더기 없는 각본과 준수한 액션 이 영화는 일단 각본에 별 군더더기가 없다. 물론 실제 사건을 기반으로 했고, 그 사건이 워낙 엄청났기 때문에 군더더기가 필요하지도 않았을 것이다. 게다가 류승완 감독의 영화 답게 잠시 나오는 액션들은 준수하다. 신파적인 장면도 거의 나오지 않는다. 오히려 마지막 장면은 실제 보도내용과 비교해보면 실제 상황이 오히려 신파스러울 ..
앞의 문제와 유사하지만, 한 번 더 꼬아 난이도가 살짝 올라간 문제. 사실, 이 문제를 풀기 위해 좀 더 공부를 하고 앞의 포스팅을 수정했다. \( \phi (n) \) 함수를 오일러가 정리한 대로 제대로 구현하지 않아도 앞의 문제는 풀 수 있었지만, 이 문제는 아니다. 일단 천만이라는 수도 무시무시한데다, 그 뒤에 \( n \)과 \( \phi (n) \)이 순열인지 여부까지 확인해야 된다. 코드의 기본은 앞의 내용을 (대폭 수정한 뒤에) 거의 그대로 가져왔다. 에라토스테네스의 체를 활용해서 소인수 테이블을 먼저 만드는 것도 동일하다. 순열(permutation) 여부를 확인하는 코드와 아주 약간 바뀐 규칙 외엔 거의 동일하다. #include #include using namespace std; #i..
그간 도저히 포스팅할 시간이 나지 않았다. 정말이지 오랜만의 포스팅. 오랜만에 오일러 프로젝트를 하나 풀어봤다. 오일러의 \( \phi(n) \) 함수는 주어진 숫자보다 작은 수 중에 서로소인 수의 개수이다. 수학 쪽 분들께는 아래와 같이 정의될 수 있다고 한다. \( \phi(n) = n {\prod _{p|n}^{}} \left (1- \frac{1}{p} \right ) \) 그리고, 저 정의를 활용하면 \( n / \phi(n) \)가 최대가 되는 경우를 좀 더 손쉽게 알 수 있다고 한다. 그런데, 저 식을 제대로 이해하지 못하면서 코드를 만들고 싶지는 않아서 그냥 정공법으로 풀어보기로 했다. 첫번째 시도 모든 것을 무식하게 돌려보기로 했다. 백만 이하의 모든 수 각각에 대해 그 이하의 모든 수들..
집 인터넷으로 유플러스를 사용하고 있다. 사소한 문제가 하나 있었는데... 계약 속도는 500Mbps인데, 실제론 100Mbps밖에 못 쓴다는 것. 유명 유튜버 ITSub의 바로 그 사태와 같은 문제는 전혀 아니고... 아파트 구조가 좀 구려서 통신단자함에 전원도, 여유공간도 없는데, 여기로 방마다 연결을 해야 했다. 그래서, 궁여지책으로 선택한 것은 8가닥 대신 4가닥으로 연결해서 집안 유선의 속도를 100Mbps로 떨어뜨리는 것. 내부망은 TP-Link의 Deco Mesh로 연결해서 모두가 무선을 빠방하게 쓸 수 있었지만 본질적인 한계는 명확했다. 이번에 시간이 좀 생겨서, 이를 대폭 개선해봤다. 일단, 통신단자함에 전원이 없는 문제는, 분전반에서 전력을 직접 따오기로 했다. 그리고 단자함 내에 기가..