일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 벡터
- linux
- 다이나믹 프로그래밍
- C
- 문제풀이
- c#
- Graham Scan
- 수학
- Expanding Polytope Algorithm
- Doubly Connected Edge List
- 리눅스
- Unity
- ubuntu
- 유니티
- 내적
- 우분투
- SOH
- AABB
- GJK
- 분할축 이론
- 충돌 알고리즘
- 외적
- 알고리즘
- dp
- 보로노이다이어그램
- Vector
- PS
- 백준
- C++
- uclidean algorithm
- Today
- Total
목록분류 전체보기 (62)
마이 플밍 블로그
컴파일 어셈블리어는 기계어와 일대일 대응이되는 저급 프로그래밍 언어이다. 초창기 컴퓨터는 모두 어셈블리어로 프로그래밍 되어있었다. 컴퓨터 구조에따라 사용되는 기계어가 달라서 어셈블리어를 컴퓨터 구조에 맞춰 작성해야했었다. 그래서 통일된 구조의 언어의 필요성이 생겼고 그렇게 나온게 고급 언어이다. 허나 고급언어를 작성하면 어셈블리어로 번역시켜주는 과정이 필요했는데 그것을 컴파일이라고 한다. 컴파일 시켜주는 방식에는 두가지가 있는데 그것이 컴파일러와 인터프리터이다. 컴파일러 컴파일러는 코드 전체를 기계어로 번역한다. 한번에 모든 코드를 번역하기 때문에 시간이 많이 걸린다. 하지만 프로그램 실행시 인터프리터보다 빠르다. 그 이유는 초기 스캔을 마치면 실행파일을 만들어서 다음에 실행하면 실행파일을 이용하기 때문..
2146번: 다리 만들기 여러 섬으로 이루어진 나라가 있다. 이 나라의 대통령은 섬을 잇는 다리를 만들겠다는 공약으로 인기몰이를 해 당선될 수 있었다. 하지만 막상 대통령에 취임하자, 다리를 놓는다는 것이 아깝다 www.acmicpc.net 풀이 bfs가 아닌 dfs로 풀어서 조금 애먹었던 문제이다. 섬들에 번호를 매기고 각 섬의 가장자리 부분들의 위치를 저장한뒤 가장자리 에서 부터 시작해서 다른 섬으로 다리를 점점 넓혀나가면 된다. 코드 #include using namespace std; int board[101][101]; int flag[101][101]; int region[101][101]; int regionNum = 1; int n; int dx[4] = {0,0,-1,1}; int dy[..
리눅스운영 체제는 패키지와 패키지매니저가 있다. 패키지는 여러 파일이 한데 모인 하나의 압축파일인데 이 안에는 패키지가 잘 실행될 수 있도록 하는 파일들이 들어가 있다. 패키지 매니저는 패키지의 설치, 삭제등을 관리하게 해주는 도구이다. 패키지 매니저로 설치를 명령하면 패키지 매니저는 패키지가 있는 위치로가서 패키지를 다운로드하고 설치를 한다. 패키지 매니저는 패키지의 설치, 변경, 삭제 등을 편리하게 관리할 수 있도록 해주는 도구이다. 사용자가 패키지 매니저를 통해 특정 프로그램의 설치를 요청하면, 패키지 매니저는 패키지가 저장된 위치에서 패키지를 다운로드하여 설치 프로그램을 실행한다. 이런 패키지 매니저는 대표적으로 Debian 계열 리눅스 배포판에는 apt, Redhat 계열 리눅스 배포판에는 rp..
루팅(rooting)이란? 루팅이란 안드로이드 운영체제에서 최상위 권한인 루트권한을 얻어 해당기기에 걸린 모든 제약을 풀어버리는 행위를 뜻한다. 안드로이드에는 기본적으로 사용자가 마음대로 안드로이드를 개조하여 이용하지 못하도록 여러 제약이 걸려있는데 루팅을 하면 시스템 앱을 강제로 삭제하거나 해킹 프로그램을 설치하는등 기존에는 시도할 수 없던 모든 것을 할 권한을 얻는것이다. 루팅의 장점 루팅을 하게되면 다양한 장점이 있다. 나열하자면 1. 성능향상 필요없는 앱을 삭제시키거나 CPU 오버클럭을 통해서 성능을 향상 시킬 수 있다. 2. 커스텀 ROM 사용자지정 ROM을 이용해 설치되어 있지 않은 최신 버전의 Android버전을 설치할 수 있다. 3. 배터리 성능 향상 Magisk모듈, Greenify를 이..
녹스란 무엇인가? 삼성 갤럭시 스마트폰을 사용하는 사람들이라면 모두가 이용하고 있는 보안앱으로 Knox가 있다. 삼성 녹스란 삼성에서 출시한 기업 및 개인 보안용 솔루션이다. 녹스는 제조 단계에서 부터 기기에 내장되어서 기기를 이용하는 유저는 자신도 모르는새에 녹스를 이용하게 되는것이다. 녹스는 해킹이나 기타 보안위협으로 부터 기기를 보호하는 역할을 해주기 때문에 사용자들이 안전하게 기기를 사용할 수 있게 해주는 좋은 보안 솔루션이다. 녹스는 미 국방부의 보안인증 조건(FIPS 140-2)을 통과하고 그 외에도 여러 나라에서 인증을 받은 입증된 성능을 가진 솔루션이다. 여러 국방기관이나 대기업등 보안이 중요한 다양한 곳에서 녹스를 도입해 사용할 정도로 보안에선 확실한 성능을 지니고 있다. 일반 사용자용 ..
개요 스마트폰이나 태블릿 등 가진 전자기기가 제한적일 때도 PC와 같이 VS Code 같은 IDE를 통해 코딩을 하고 싶을 때가 있다. 그럴때 Termux와 code-server를 이용하면 안드로이드 기기에서도 VS Code를 이용할 수 있다. 언제 어디서든 코딩을 할 수 있게 되는 것이다. Termux란? Termux란 Android환경에서 사용가능한 Linux 환경 터미널 에뮬레이터다. 터미널 에뮬레이터의 의미를 보자면 터미널 에뮬레이터는 다른 디스플레이 구조 내에서 비디오 터미널을 재현하는 컴퓨터 프로그램입니다. 즉, 터미널 에뮬레이터에는 서버에 네트워크로 연결된 클라이언트 컴퓨터처럼 단순 머신을 표시할 수 있는 기능이 있습니다. 터미널 에뮬레이터를 사용하면 최종 사용자가 콘솔뿐만 아니라 텍스트 사..
pyodide에선 tkinter안됨
5567번: 결혼식 예제 1의 경우 2와 3은 상근이의 친구이다. 또, 3과 4는 친구이기 때문에, 4는 상근이의 친구의 친구이다. 5와 6은 친구도 아니고, 친구의 친구도 아니다. 따라서 2, 3, 4 3명의 친구를 결혼식에 초대 www.acmicpc.net 풀이 1번 노드부터 시작해서 연결된 간선들을 탐색하며 한번 방문했으면 답에 추가하고 이미 방문했다면 연결된 간선들을 탐색만 한다. 탐색을 할때마다 카운트를 1증가시키며 카운트가 2가되면 answer을 반환한다. 코드 #include using namespace std; int n, m; int flag[501]; vector friends[501]; int Find(int u, int c){ int answer = 0; if(flag[u] == 0..