[Algorithm] Backtracking
Backtracking의 개념에 대해 정리해보도록 하겠습니다.
Backtracking의 개념에 대해 정리해보도록 하겠습니다.
```c++ #include #include using namespace std;
입력을 중단하는 특정조건이 없는 문제였습니다. 아래와 같이 while문을 이용하여 입력을 중단시킬 수 있는 방법을 배운 문제였습니다. ```c++ #include using namespace std;
``` #include using namespace std;
```c++ #include #include using namespace std;
```c++ #include #include using namespace std;
```c++ #include using namespace std;
c++ string class의 getline함수 사용법에 대해 알 수 있는 문제였습니다. cin은 공백을 입력받지 못하지만 string class의 getline함수를 사용하면 공백을 입력받을 수 있고, 이를 활용하여 문제를 해결할 수 있습니다.
```c++ #include using namespace std;
```c++ #include using namespace std;
```c++ #include using namespace std;
```c++ #include using namespace std;
```c++ #include #include using namespace std;
```c++ #include using namespace std;
```c++ #include #include using namespace std;
0과1로만 이루어지고 가운데가 0인정사각형을 출력하는 문제입니다. y = x 형태의 그래프와 좌표의 개념을 이용하여 문제를 해결하였습니다.
```c++ #include using namespace std;
일반적인 형태의 배열을 달팽이 배열의 순서로 탐색하면서 입력받은 정수 a번째부터 b번째까지 존재하는 숫자들을 출력하는 문제입니다.
```c++ #include #define SIZE 10 using namespace std;
```c++ #include #define SIZE 100 using namespace std;
전에 구현하였던 2의 제곱수와 다르게 입력되는 자리수 크기만큼의 거듭제곱수를 구하는 알고리즘입니다.
```c++ #include #include using namespace std;
```c++ #include using namespace std;
```c++ #include using namespace std;
문제 : 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
시침과 분침사이의 각도를 계산하는 알고리즘을 구현하는게 핵심사항이었습니다. 그리고 자료형변환을 하면서 입력값에 손실이 생기지 않게 하는게 핵심사항이었습니다.
```c++ #include using namespace std;
```c++ #include using namespace std;
오늘은 재귀적 기법을 이용해 c++로 하노이 탑 알고리즘을 구현해봤다.
C++에서 typedef를 이용하여 자료형의 이름을 재정의하는 방법을 기록해보도록 하겠습니다. 예를 들어 long long 자료형을 사용해야하는 경우, 자료형의 이름이 너무 길어 코드를 작성하기에 불편한 점이 있을 수 있습니다. 이런 경우에 아래와 같이 작성하면 편리하게 코드를 작...
C++에서 scanf와 포맷팅을 활용하여 한 자리의 숫자만 입력받는 방법에 대해 기록하겠습니다.
C++의 std::pair에 대해 기록해보도록 하겠습니다.
C++에서 Return을 활용할 수 있는 몇가지 방법들에 대해 간단하게 기록해보도록 하겠습니다.
오늘은 g++ 컴파일러 버전에 의해 발생하는 에러 해결방법에 대해 기록해보도록 하겠습니다.
C++의 string에 적용할 수 있는 find 메소드에 대해 알아보도록 하겠습니다.
C++의 substr() 메소드의 사용법에 대해 알아보도록 하겠습니다.
기본적인 Sort 사용법 ( ex : vector ) #include <algorithm> sort(vec.begin(), vec.end()) (ascending order)
C++ headerfile에 존재하는 to_string 사용법입니다. 위의 method를 사용하면 string의 형태로 변환가능합니다.
알고리즘 문제를 풀 때 유용한 C++ STL 사용법에 대해 정리해보겠습니다.
size() function을 이용하면 string의 길이를 알아낼 수 있다. 알고리즘 문제를 해결할 때 유용하게 사용할 수 있는 방법중 하나인 것 같다. ```c++ #include #include using namespace std;
```c++ #include #include
```c++ #include #include
```c++ #include #include using namespace std;
```c++ #include #include
OpenCV에서 사용할 수 있는 Interpolation들에 대해서 기록해보도록 하겠습니다.
OpenCV의 cv2.resize()함수에 대해 자세히 알아보도록 하겠습니다. 인자 설명
OpenCV를 이용해 이미지를 처리하는 여러 방법들에 대해 간단히 알아보도록 하겠습니다.
아래의 에러 발생시 해결할 수 있는 방법에 대해 설명하도록 하겠습니다.
2차원 이미지를 회전시킬 수 있는 cv2.getRotationMatrix2D() 사용법에 대해 알아보도록하겠습니다.
OpenCV의 cv2.rotate() 메소드를 이용하여 이미지를 회전 시키는 방법에 대해 알아보도록 하겠습니다.
아래와 같이 파일의 확장자를 지정해주지 않으면 아래와 같은 오류가 발생한다. import cv2 cv2.imwrite("dog", img) 오류내용 cv2.error: OpenCV(4.6.0) /io/opencv/modules/imgcodecs...
face_recognition이 정상적으로 설치된 경우에도 라이브러리를 import하는 과정에서 아래와 같은 오류가 발생할 수 있습니다.
오늘은 face_recognition 라이브러리를 설치하는 방법을 알아보도록 하겠습니다.
오늘은 깃허브 프로필에 스킬뱃지를 만드는 방법에 대해 기록해보도록 하겠습니다.
블로그에 파비콘을 설정하는 방법에 대해 알아보도록 하겠습니다.
아래와 같이 깃허브 프로필에 README파일을 출력하는 방법을 알아보겠습니다.
jekyll테마의 minimal_mistakes를 사용하면서 대부분 만족하였지만, 한가지 아쉬운 점이 있었다. 바로 소스코드를 올렸을 때 페이지의 넓이가 작아서 코드의 많은 부분이 짤려나온다는 점이었다. 물론 스크롤을 해서 나머지 코드들도 볼 수 있지만 가독성이 떨어졌기 때문에, ...
오늘은 블로그에 댓글 기능을 추가해보도록 하겠습니다. 깃블로그 자체에 댓글 기능이 없기 때문에 DISQUS를 이용하여 댓글 기능을 추가해보도록 하겠습니다. 추가로 이 글은 jekyll테마의 minimal_mistakes를 기준으로 만들어졌습니다.
오늘은 파이썬의 if name == “main” 의 의미에 대해서 기록해보도록 하겠습니다.
python에서 sys.stdin.readline를 이용해서 입력을 받는 방법에 대해 기록해보도록 하겠습니다.
파이썬의 strftime()메소 포맷 코드를 모아놓은 표입니다.
python의 threading을 이용하여 정해진 시간마다 반복적으로 현재시간을 출력하는 코드입니다. ```python import threading import datetime
10진수를 2진수로 변환하는 것은 python에서 bin()함수를 이용하여 간단하게 할 수 있습니다. 하지만 2진수를 변환할 때 bin()을 이용하면 가공하기 쉽지않은 형태로 이진수가 출력되게 됩니다.
파이썬을 사용하는 중에 리스트에서 특정요소의 개수를 알아야 하는 상황이 있었습니다. 찾아보니 파이썬에는 count라는 유용한 함수가 있어서 기록하게 되었습니다. list = [a,a,a,b,c,d,e]
오늘은 특정 커밋 시점으로 돌아가고 싶을 때, 돌아갈 수 있는 방법에 대해 알아보도록 하겠습니다.
레포지토리를 Clone 할 때, 특정 브랜치만 Clone하는 방법에 대해 알아보도록 하겠습니다.
Github의 checkout과 stash명령어 사용법에 대해 알아보도록 하겠습니다.
Github 레포지토리와 로컬 저장소를 연동하는 방법에 대해 정리해보도록 하겠습니다.
안드로이드 스튜디오 TextView에서 android:text를 사용할 때 유의할 점을 기록해보도록 하겠습니다.
EditText의 내용을 가운데 정렬하는 방법에 대해 기록해보도록 하겠습니다.
Linear Layout은 순서대로 객체들이 쌓이기 때문에 단순하게 객체들을 추가하다보면 객체들이 화면밖으로 나가는 경우가 생기기 때문에 추가로 설정을 해줘야합니다. 간단하게 Linear Layout의 정렬 방법에 대해 기록해보도록 하겠습니다.
안드로이드 스튜디오에서 페이지를 연결(Intent)을 할 때, 꼭 수정해줘야하는 파일이 AndroidManifest.xml파일입니다. 이 파일을 제대로 설정하지 않으면 페이지 연결이 되지 않으니, 꼭 유의해야합니다.
안드로이드 스튜디오에서 발생하는 간단한 오류는 캐시제거로 해결할 수 있는 경우가 있습니다. 아래는 안드로이드 스튜디오의 캐시를 제거하는 방법입니다.
Google Image Downloader를 이용해서 이미지를 크롤링하는 방법에 대해 알아보도록 하겠습니다.
icrawler를 이용하여 google에서 이미지 크롤링을 해봤습니다. ‘root_dir’ -> 이 곳에는 저장할 위치를 설정해줍니다.
셀레니움 라이브러리를 이용하여 페이지를 스크롤링하는 기능과 확장기능을 추가하였습니다
셀레니움 라이브러리를 이용하여 웹상에서 이미지를 추출하여 저장할 수 있는 프로그램을 만들어보았습니다.
```c #include #include #define SIZE 6
```c #include #include #define SIZE 6
```c #include #include #define SIZE 100
```c #include #include #define SIZE 100
라즈베리파이의 전원을 끌 때 안전하게 종료하는 방법을 기록해보도록 하겠습니다.
라즈베리파이와 맥북을 랜선으로 연결하게되면 맥북의 인터넷이 비활성화되는 경우가 있습니다. 이는 네트워크의 서비스 순서 설정 때문에 발생한 간단한 문제로 설정변경을 통해 해결할 수 있습니다.
Linux OS상에서 갑자기 YOLOv5가 실행이 되지 않았을 때가 있었고, 해당 오류를 해결한 방법을 기록해보록 하겠습니다.
Images per class. ≥ 1500 images per class recommended Instances per class. ≥ 10000 instances (labeled objects) per class recommended Image variety. Mu...
track.py에 custom dataset을 weights파일로 적용하려고 할 때 아래와 같은 에러가 발생하는 경우가 있습니다. AttributeError: Can't get attribute 'DetectionModel' on <module 'models.yolo' fro...
YOLOv5에 Deepsort 알고리즘을 적용한 코드를 Google Colab에서 실행시킬 수 있는 코드입니다.
p.html <!DOCTYPE html> <html> <head> <title>about p tag</title> </head> <body> <p> The HyperT...
생활코딩님의 html 강의를 보며 학습한 내용입니다. a.html <h1>Letter to html</h1> hello <strong>html</strong>. Nice to meet you. <a href="https://dev...
오늘은 다양한 언어의 기반이 되는 Html에 대해 공부해보았다. 다른 언어를 배우려고 할 때 Html을 기본적으로 알고있어야 하는 경우가 많아서 공부하게되었다. Html이 웹페이지를 위한 마크업 언어여서 그런지 markdown과도 유사한 부분이 꽤 있는 것 같다. 아래는 직접 Ht...
데이터 라벨링 과정에서 필요한 단축키에 대해 정리해보도록 하겠습니다.
데이터 라벨링 과정에서 각각의 사진마다 매번 라벨을 지정하지 않고 자동으로 라벨을 설정해주기 위한 방법에 대해 설명하도록 하겠습니다.
M1 운영체제 위에 LabelImg를 설치하는 방법을 알아보도록 하겠습니다.
공식 깃허브 링크 : Grounding DINO Github
DeepFashion Try-On
오늘은 mAP에 대하여 알아보도록 하겠습니다.
오늘은 구글 코랩에 이미지를 삽입하는 방법에 대해 기록해보도록 하겠습니다.
코랩에 구글 드라이브를 마운트 할 수 있는 방법을 기록해보도록 하겠습니다.
코랩의 런타임을 유지시킬 수 있는 방법에 대해 알아보도록 하겠습니다.
오늘은 기존 ROS를 삭제하고 재설치하는 방법에 대해 기록해보도록 하겠습니다.
ROS를 설치하고 정상적으로 실행되는지 확인해보기 위해 터미널을 열고 아래의 명령어들을 순서대로 입력합니다.
우분투 18.04에서 사용할 수 있는 ROS Melodic 설치 명령어를 기록해보도록 하겠습니다.
Mac 환경에서 아래의 명령어를 사용하는 방법에 대해 기록하겠습니다.
맥 운영체제의 사파리에서 티스토리에 접속이 안되는 문제를 해결하는 방법에 대해 기록해보도록 하겠습니다.
오늘은 Mac OS 업데이트시 발생하는 깃 오류와 해결방법에 대해 기록해보도록 하겠습니다.
마크다운 문법 중 테이블(표)를 만드는 방법을 자세히 알아보도록 하겠습니다.
MarkDown
리눅스의 mv 명령어 사용 방법에 대해 간단하게 기록하도록 하겠습니다.
디렉토리 목록확인 $ ls $ ls -l : 자세한 내용까지 출력한다. $ ls -a : 숨겨진 파일이나 디렉토리까지 보여준다 . $ ls -s : 파일 크기 순으로 정렬한다.
오늘은 pip의 기본적인 사용법에 대해 기록해보겠습니다.
python을 사용할 때 환경을 구분하기 위해 conda를 자주사용하는데 명령어를 계속 찾아보게 되어 오늘은 conda명령어에 대해 정리해보려고한다. 아래는 conda를 다운 받을 수 있는 공식 깃허브이다. miniforge3 download link : Url
오늘은 영어가 아닌 한글을 ocr을 이용해서 추출해보도록 하겠습니다. 기본적인 설정은 같지만 조금 더 편하게 코랩환경을 구축하기 위해 구글 드라이브를 마운트하겠습니다.
개발환경은 구글 코랩을 이용하여 진행하였습니다.
오늘은 ubuntu 터미널 중 하나인 terminator 사용 명령어에 대해 정리해보도록 하겠습니다.
우분투에서 그림판이라고 할 수 있는 kolourpaint4 설치방법에 대해 알아보도록 하겠습니다.
Pytorch를 사용할 때, GPU를 활성화 시키는 방법에 대해 알아보도록 하겠습니다.
오늘은 M1 OS위에 Pytorch를 설치하는 방법에 대해 알아보겠습니다.(가상환경 위에 설치하는 것을 전제.)
```python import tensorflow as tf import numpy as np import matplotlib.pyplot as plt
기본적으로 Homebrew는 아래와 같이 공식홈페이지에 있는 명령어를 터미널에 복사하여 실행함으로서 설치할 수 있습니다.
해당에러가 발생했을 때, 해결할 수 있는 방법에 대해 알아보도록 하겠습니다.
Java String 클래스의 기본적인 메소드들에 관한 정리입니다. ```java public class Main { public static void main(String[] args) { // String str = new String(“Hello”); String s...
Firebase를 위한 간단한 파이썬 라이브러리인 Pyerbase설치방법을 알아보도록 하겠습니다.
Visual Studio Code에서 사용할 수 있는 단축키들에 대해 간단하게 정리해보도록 하겠습니다.
하나의 컴퓨터로 여러개의 운영체제를 사용하기 위해 듀얼부팅을 해야하는 경우가 있는데, 이때 Boot순서를 변경하여 사용하고 싶은 OS를 쓰는 방법에 대해 알아보도록 하겠습니다.
오늘은 간단하게 ``(Backtick)을 맥에서 사용하는 방법에 대해 기록해보도록 하겠습니다.
아두이노 IDE를 사용하다 보면 시리얼 모니터를 띄워야 하는 경우가 있는데 자동으로 띄워지지 않는 경우가 있습니다. 이때 시리얼 모니터를 띄울 수 있는 방법에 대해 기록해 보도록 하겠습니다.
오늘은 리눅스의 에디터 중 하나인 vi에서 자주 쓰이는 명령어들을 간단하게 정리해보도록 하겠습니다.