Technology 35

[C++] 파일 확장자

c++ 파일의 확장자는 컴파일러에 따라 달라질 수 있습니다. 아래 내용은 C++ 기초플러스 6판 (Stephen Prata 저)에 나온 내용입니 C++ 컴파일러 소스 코드 확장자 Unix C, cc, cxx, c GNU C++ C, cc, cxx, cpp, c++ Digital Mars cpp, cxx Borland C++ cpp Watcom cpp Microsoft Visual C++ cpp, cxx, cc Freestyle CodeWarrior cpp, cp, cc, cxx, c++ 한가지 특이한 점은 Unix와 GNU C++ 컴파일러는 대소문자를 구분하기 때문에 .c와 .C를 다르게 인식한다는 것입니다. c++파일을 .c로 해도 c++로 컴파일은 가능하지만 표준에서 .c는 C 프로그램용으로 사용됩니..

Technology/C & C++ 2023.03.12

[git] git push 혹은 clone 오류 error:140943FC

git push 중 갑자기 오류 인터넷 연결 다시해보세요 집에서 문서작업을하고 github에 올리고는 합니다. 습관적으로 git pull push 를 하는데 생각해보니 어제 올린 문서가 제대로 github 에 안올라갔던 것이 기억납니다. 오늘 작업하고 git push 메시지를 자세히 살펴보니 아래와 같은 문구가 나옵니다. error: RPC failed; curl 56 OpenSSL SSL_read: error:140943FC:SSL routines:ssl3_read_bytes:sslv3 alert bad record mac, errno 0 send-pack: unexpected disconnect while reading sideband packet 심상치 않죠? 당연히 구글링합니다. 첨에는 git p..

Technology/etc. 2023.03.07

[UA] STANAG 4586 무인기 연동 프로토콜

STANAG 4586 이란 무엇인가 STANAG 4586은 NATO에서 만든 무인기 운용에 관한 협정으로 NATO 에 속한 연합국가간 무인기 운용시 기본적인 이륙, 비행, 임무 수행, 착륙에 이르는 무인기 운용 단계마다 어떤 방식으로 제어 하겠다는 내용이 담겨 있습니다. 기본적으로 메시지와 메시지의 필드별 의미와 각 메시지 필드간 종속관게에 대한 규칙이 포괄적으로 적혀 있습니다. STANAG는 Standardization Agreement의 약자로 한국어로 표준화협정입니다만 한글 번역은 모르셔도 됩니다. 실무에서는 스타나그 혹은 나토표준 이라는 말로 쓰입니다. 이러한 규칙을 "프로토콜" 이라고 부릅니다. NATO 나토는 무엇인가 나토 표준이라고? 이건 또 뭐야 라고 생각하실 수 있겠네요 나토 NATO의 ..

[혼공머신]Ch 1. 나의 첫 머신러닝

1-1 인공지능과 머신러닝 딥러닝 머신러닝이란 머신러닝은 규칙을 일일이 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야 사이킷 럿 Scikit-learn은 컴퓨터 과학분야의 대표적인 머신러닝 라이브러리로 검증되고 안정된 머신러닝 알고리즘을 포함하고 있습니다. 머신러닝 알고리즘을 활용하여 어떤 서비스를 만들고 싶다면 사용하기 용이합니다. 딥러닝이란 딥러닝은 머신러닝 알고리즘 중에 인공 신경망(artificial neural network)을 기반으로 한 방법들을 통칭합니다. 텐서플로TensorFlow는 구글이 2015년 공개 파이토치PyTorch는 페이스북이 2018년에 공개한 오픈소스 딥러닝 라이브러리입니다. 두 라이브러리는 인공 신경망을 전문으로 다루며 사용하기 쉬운 ..

Technology/AI 2022.10.31

왜 AI, 8년차 임베디드 개발자의 앞날 고민

고민의 결과 세상에서 AI가 차지하는 영역이 점점 넓어지고 있습니다. 그래서 머신러닝+딥러닝 공부 시작합니다. 결론이 왜 이런지는 뒤에서 확인하세요. 어떻게 할건가요? 혼자 공부하는 머신러닝+딥러닝 / 박해선 / 한빛미디어 혼자 공부하려고 책을 3권 추려서 머신비전 전공하고, AI 직군으로 취업하는 친구에게 골라달라고 했습니다. 1번 "파인썬 라이브러리를 활용한 머신러닝 / 안드레아스 뮐러, 세라 가이도(박해선 역) / 한빛미디어 2번 혼자 공부하는 머신러닝+딥러닝 / 박해선 / 한빛미디어 3번 머신러닝 교과서 with 파이썬, 사이킷런, 텐서플로 / 세바스찬 라시카, 바히드 미자리러(박해선 역) / 길벗 이 친구가 처음 추천해준 책은 1번 책이고, 제가 추가로 골랐던 책이 2,3번인데 최종적으로 2번 ..

Technology/AI 2022.10.23

[PS]백준 N-Queen 문제 풀이모음

1. dp를 1차원배열 1개로 풀이 4352ms queen의 위치를 저장한 배열 1개로 중복 열, 중복 대각선을 수식으로 계산하여 skip 현재까지 구한 queen 위치를 일일이 비교하므로 모든 경우의 수에서 최대 16번의 비교가 추가로 필요 https://chanhuiseok.github.io/posts/baek-1/ 2. dp를 1차월배열 3개로 풀이 1652ms 현재까지 놓인 열번호, 우상대각선, 좌상대각선 관리 배열로 관리 현재 놓으려는 열 번호를 해시값으로 하여 배열에 접근하여 중복된 값이 있는지 확인하기 때문에 1번 풀이에서 현재까지의 queen 위치를 비교하는 방식보다 메모리는 더 쓰지만 속도는 빨라짐 https://3dpit.tistory.com/2

[PS] cin cout 사용시 주의

문제: 백준 1620번 나는야 포켓몬 마스터 이다솜 C와 C++에서 제공하는 입출력 구분 C C++ 헤더 stdio.h iostream / cstdio 입력 scanf cin / scanf 출력 printf cout / printf 기본적으로 C++ 코드에서는 C에서 사용하는 함수들을 가져다 쓸 수 있다. 그래서 #include 를 사용해도 된다. 만약 C++ 표준으로 사용한다면 #include 를 사용한다. 이번에는 문자열을 입력받아 처리하는 문제이다. 문자열 처리 편리를 위해 string 클래스를 사용하여 입력받는 코드를 짰는데 string 클래스는 cin 을 사용해서 입력받아야 하기 때문에 다른 변수는 scanf로 입력받고 문자열만 cin으로 받았다. 결과는 시간초과 cin 이 문제였기 때문에 아래..

[PS]알고리즘 강의

세상에는 정말 똑똑하고 훌륭한 사람이 많다. 자신들이 가진 지식을 무료로 체계적으로 이렇게 뿌려주다니..^^ 감사합니다~ https://blog.encrypted.gg/922?category=773649 [실전 알고리즘] 0x01강 - 기초 코드 작성 요령 I 안녕하세요, 바킹독입니다. 이번 단원에서는 기초 코드 작성 요령을 익혀보려고 합니다. 목차를 보셨으면 알겠지만 기초 코드 작성 요령이 두 강으로 나눠져있는데 앞으로 코드를 잘 짜기 위해 blog.encrypted.gg https://bloodstrawberry.tistory.com/47 삼성 B형 링크 개념 설명 메모리 풀 Memory Pool 메모리 풀 vs malloc 속도 비교 링크드 리스트 Linked List 해시 테이블 Hash Tabl..