분류 전체보기
-
[라즈베리파이] senseHat LED Controller공부/Embedded 2024. 4. 17. 09:22
- 기울이면 Player가 이동 from sense_hat import SenseHat from time import sleep sense = SenseHat() red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) white = (255, 255, 255) black = (0, 0, 0) class Game(): def __init__(self): self.size = 8 self.board = [ [0, 1, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 1, 0], [0, 1, 1, 1, 1, 0, 1, 0], [0, 0, 1, 0, 0, 0, 1, 0], [0, 0, 1, 0, 1,..
-
최근 풀면서 재미있거나 기억나는 문제 모음.알고리즘/백준 2024. 4. 15. 22:39
알고리즘 : 깊이 우선 탐색, check 배열을 두 개를 돌리면서 사이클을 검사해야하는 문제(위상정렬로도 가능) https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net 알고리즘 : DFS, BFS, 구현(섬의 높이를 어떻게 구해나갈지 생각하기가 힘들었음) https://www.acmicpc.net/problem/1109 1109번: 섬 첫째 줄에 높이가 0인 섬의 개수, 높이가 1인 섬의 개수, …, 높이가 M인 섬의 개수 까지 공백으로 구분해서 출력한다...
-
[회고] 2024년 1월 ~ 4월(현재)일상/회고 또는 후기 2024. 4. 14. 05:20
그래도 간간히 뭐하고 살았었는지 남겨놓으면 좋지 않을까 해서 써보는 회고. 1월 SSAFY 합격 2023년 7월~12월까지의, 약 6개월 동안의 현장 실습을 마치고, 한 달도 지나지 않은 시점 싸피에서의 수업이 시작됐다. 처음에는 자바 전공으로 싸피에 입과 하였지만, 2주간의 스타트 캠프 후, 서울 임베디드 트랙으로 입과 하였다. 4년간 다닌 학교는 수원이고, 그전까지 다니던 회사는 판교에 위치하여 있어서, 집에서 역삼역까지의 통학은 쉽게 느껴지고 있는 것 같다. 2월 SSAFY 생활 싸피에 적응하고 수업을 듣느라 바빴던 것 같다. 그리고 받은 싸피 월급으로 키보드도 샀다. (현재는 다얼유 87k에 엠스톤 밀키축으로 축만 바꿔서 쓰고 있다.) 처음 싸피에 입과 하였을 때 만난 사람들과 알고리즘 스터디도 ..
-
[선분 교차 판정] 선분 교차 2알고리즘/백준 2024. 4. 6. 23:22
https://www.acmicpc.net/problem/17387 17387번: 선분 교차 2 첫째 줄에 L1의 양 끝 점 x1, y1, x2, y2가, 둘째 줄에 L2의 양 끝 점 x3, y3, x4, y4가 주어진다. www.acmicpc.net CCW 를 사용하여 두 선분의 교차 관계를 판정하는 문제이다. 행렬 연산 시, 오버플로우를 간과해서 계속 틀렸다. ㅇㅅㅇ... - AB 선분, CD 선분 간의 교차 판정 R1과 R2가 모두 0 인 경우 : 서로 직선에 위치한 관계, x와 y에 대한 겹치는지 판정 R1과 R2의 곱이 음수인 경우 : 교차 int R1 = ( A, B, C 에 대한 CCW) * ( A, B, D 에 대한 CCW); int R2 = (C, D, A 에 대한 CCW) * (C, D..
-
[Algorithm] CCW알고리즘/백준 2024. 4. 6. 23:13
Counter Clock Wise 점 A, B, C가 있을 때 3개의 점 A, B, C를 차례로 이은 직선의 모양을 알고자 할 때 유용한 기하 알고리즘이다. 세 점에 대해 다음의 3 가지 모양이 존재할 수 있다. 귀찮으니까 코드로 보자. AB와 BC 벡터를 구하고, 벡터를 Cross (외적) 연산하면 세 점 A, B, C의 관계를 알 수 있다. 반시계 방향 : 음수 시계 방향 : 양수 직선 : 0 #include using namespace std; struct xy { int y, x; }; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); xy A, B, C; cin >> A.x >> A.y >> B.x >> B.y >> C.x >> C...
-
[Embedded Linux] 프로세스공부/Embedded 2024. 4. 2. 10:06
프로세스 : 실행된 프로그램을 의미, 프로그램이 실행되어 메모리에 적재(Load) 된 상태 PID: Process ID, 운영체제에서 프로세스를 식별하기 위해 프로세스에 부여하는 번호 PPID: Parent Process ID, 부모 프로세스의 PID PGID: Process Group ID, 1 개 이상의 프로세스 그룹을 식별하기 위한 ID SID: Session ID, 1개 이상의 프로세스 그룹의 그룹을 식별하기 위한 ID 리눅스 명령어 ~$ ps -u : 유저가 실행한 프로세스 확인 ~$ ps -ef : 모든 사용자들이 구동시킨 프로세스에 대해 Full Format * PID 1 은 커널로 리눅스 부팅 시 최초 실행되는 프로세스이다. ~$ pstree : 프로세스를 트리 구조로 확인 * 최초 프로세..
-
[Embedded C] Thread공부/Embedded 2024. 4. 1. 17:20
Process 구성 .text : 코드 영역 .data : 초기화된 전역변수 .bss : 초기화 하지 않은 전역변수 .heap : 동적할당 변수들 .stack : 지역 변수들 POSIX thread POSIX API : Portable Operating System InterFace for Unix의 약자로 IEEE에서 지정한 운영체제간 호환성을 유지하기 위한 표준 POSIX thread : pthread.h 위치 : /usr/include/pthread.h thread 사용 시, pthread 라이브러리를 같이 링킹 해야한다. - gcc -o ./test ./test.c -lpthread #include #include #include void *test1(){ while(1) { printf("t1\..
-
체비쇼프 거리알고리즘/Algorithm Theory 2024. 3. 24. 19:44
체비쇼프 거리 Chebyshev Distance 유클리드 거리와, 맨허튼 거리 외에도 체비쇼프 거리라는 것이 있다. 솔직히 특별한 거리는 아니고, 맨허튼 거리가 8 방향에 대해 적용되는 것이라고 보면된다. 노랑색 칸 부터 다른 칸들에 대해 체비쇼프 거리를 나타내면 다음과 같다. Flood Fill(BFS) 를 8 방향으로 돌려 얻거나, 격자의 좌표의 차이의 최대 값이 거리가 된다. strcut yx{ int y, x }; yx a, b; int distance = max(abs(a.x - b.x), abs(a.y - b.y)); https://www.acmicpc.net/problem/28452(체비쇼프 거리를 활용한 시뮬레이션 문제) 28452번: 탄막 게임 두 점 $A(x_1, y_1)$과 $B(x_..