전체 글

전체 글

    [Ubuntu] nvm으로 node version update & node version 유지

    [Ubuntu] nvm으로 node version update & node version 유지

    실행 환경: Ubuntu 22.04.3 LTS 1. nvm 설치 아래 명령어를 통해 nvm 설치 or update 가능 (curl, wget은 sudo apt-get curl wget 으로 설치 가능) - curl curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - wget wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash nvm 설치 후 적용 방법 현재 터미널 종료 후 새로운 터미널 시작 현재 터미널에서 아래 코드 입력 source ~/.bashrc 위 2가지 중 하나를 수행한 후 nvm --version을 확인해서..

    [JavaScript] 대표적으로 사용하는 암호화 알고리즘 (feat. CryptoJS)

    CryptoJS: Javascript 기반의 암/복호화가 가능한 여러 알고리즘을 간편하게 제공하는 라이브러리 암호화 방식은 크게 양방향, 단방향 암호화로 나눌 수 있다. 이 두 방식의 차이점은 암호문을 복호화해 원문을 알아낼 수 있는지 여부이다. crypto-js가 제공하는 암호화 방식에는 ⑴ 대칭키, ⑵ 비대칭키, ⑶ 해싱(hashing)이 있다. 양방향 암호화된 암호문을 복호화할 수 있다. 1. 대칭키(symmetric encryption) : 암/복호화 시 같은 키값을 이용한다. ex) DES, 3-DES, AES(128bit, 256bit), SEED, ARIA 현재 가장 보편적인 암호화 방식은 현 미국 표준방식인 aes다(DES는 너무 오래돼서 취약점이 발견됨). 128~256 비트 키를 적용할..

    [Solana Testnet] Validator 실행 시 주요 파일 & 커맨드

    Solana Validator를 돌리면서 구성했던 파일들을 백업차원으로 적어두려 한다. 현재는 안 돌아가고 있지만 그 때는 돌아갔으니, 공식 공지를 숙지하고 디스코드 커뮤니티에서 질문을 통해 trouble shooting 하면 다시 돌릴 수 있을 것이다. validator 실행 방법 아래 실행 파일들과 시스템 파일들을 작성하고 시스템 파일을 구동하면 백그라운드에서 계속 돌아간다. 시스템 구동 command // 서버 재부팅 시 자동 시작 sudo systemctl enable --now systuner.service && sudo systemctl enable --now validator.service \ && sudo systemctl enable --now watchtower.service // 시스..

    [Github] Mac OS에서 Github에 프로젝트 올리기

    [Github] Mac OS에서 Github에 프로젝트 올리기

    진행했던 프로젝트의 백업 용도로 깃허브에 올리려는데, 필요한 명령어들을 순서에 맞게 쳐야하는 부분이 좀 있었어서 정리할 겸 올려본다. 1. 백업하려는 폴더 위치에서 터미널을 열어 Git 설치여부 확인 git --version을 입력했을 때 깔려있다면 다음과 같이 뜰 것이다. 사실 Mac OS는 기본적으로 가장 낮은 버전의 깃이 깔려있다고 한다. 2. 깃허브에서 프로젝트를 올릴 레포지토리 생성 GitHub: Where the world builds software GitHub is where over 83 million developers shape the future of software, together. Contribute to the open source community, manage your G..

    [백준] 에라토스테네스의 체 기초 문제풀이 - 1978, 1929, 6588, 4673

    1978 소수 찾기 문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. 풀이 1000까지의 모든 숫자에 대해 소수인지를 미리 판별해놓고 입력이 들어왔을 때 소수면 카운트해준다. #include #define MAX 1001 int a[MAX]; int main() { //1은 소수가 아니므로 따로 판별 a[1]++; int n, tmp, result=0; scanf("%d", &n); for(int i=2; i

    [그리디 문제풀기] Google Code Jam 2018 - Qualification Round (문제 B) (C/C++)

    [그리디 문제풀기] Google Code Jam 2018 - Qualification Round (문제 B) (C/C++)

    문제 B: 트리플 버블 정렬(Trouble Sort) Code Jam - Google’s Coding Competitions Put your coding skills to the test as you work your way through multiple rounds of algorithmic coding puzzles for the title of Code Jam Champ and 15,000 USD. codingcompetitions.withgoogle.com 간략한 문제 해석 원래 버블 정렬 알고리즘은 앞뒤의 두 원소를 비교해 크기가 더 작은 것이 앞으로 오도록 순서를 정렬하는 것이다. 이 문제에서는 인접한 두 원소가 아니라, 가운데에 어떤 원소를 기준으로 양옆의 원소를 비교해 크기가 작은 것이 앞..

    [C++] 프로그래머스 - 체육복 (그리디)

    [C++] 프로그래머스 - 체육복 (그리디)

    그리디의 대표 문제 중 하나인 체육복이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 요약 전체 학생 n(2~30)명 중 체육복을 도난당한 학생들(lost)이 있다. 체육복이 없는 학생의 앞뒤 번호 중 여벌을 가져온 학생(reserve)이 있으면 체육복을 빌린다. 도난은 1개씩만 당하며, 여벌을 가져온 학생도 도난 당해서 여벌이 없어졌을 수 있다. 이렇게 빌려서 수업을 들을 수 있는 학생 수의 최대값을 반환하면 된다. 내 풀이 학생수만큼 각 번호에 1을 담은 배열을 두고, 도난을 당했으면 1을 빼고 여벌을 가져왔으면 1을 더해준다. lost를 정..

    [그리디 문제풀기] Google Code Jam 2018 - Qualification Round (문제 A) (C/C++)

    [그리디 문제풀기] Google Code Jam 2018 - Qualification Round (문제 A) (C/C++)

    Code Jam - Google’s Coding Competitions Put your coding skills to the test as you work your way through multiple rounds of algorithmic coding puzzles for the title of Code Jam Champ and 15,000 USD. codingcompetitions.withgoogle.com 문제 A: 다시 우주를 구하기 (Saving The Universe Again) ↓ 문제 캡처 간략한 문제 해설 공격(Shoot)과 기 모으기(Charge)가 있다고 했을 때, Charge 시 데미지가 2배가 되어 공격력이 높아지고, Shoot 시 높아진 공격력으로 맞게 된다. 초기 데미지는 1이..