| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 문자열
- 알고리즘
- Network
- 동적계획법
- 프로그래머스
- dfs
- 투 포인터
- Kotlin
- JUnit 5
- BFS
- 시뮬레이션
- 이분탐색
- 세그먼트 트리
- 백준
- CS
- 백트래킹
- Effective Java
- 플로이드-와샬
- 그리디
- mst
- 수학
- 유니온 파인드
- 후니의 쉽게 쓴 시스코 네트워킹
- 구현
- java
- 완전탐색
- 에라토스테네스의 체
- swea
- 위상정렬
- 스택
목록전체 글 (291)
반갑습니다!
2096번: 내려가기 boj.kr 풀이 전형적인 동적계획법 문제이다. 하지만 이 문제는 메모리 초과를 조심해야한다. 일반적인 동적계획법을 풀 때 처럼 dp 배열을 생성하면 메모리 초과로 오답을 받게 된다. 그래서 아래의 코드에서는 입력받을 때마다 최대값, 최소값을 저장하는 dp 배열을 갱신해줘서 해결했다. 코드 C++ #include #include using namespace std; int n; int dp[3][2]; int main() { cin >> n; for (int i = 0; i > a >> b >> c; int t1 = dp[0][0]; int t2 = dp[1][0]; int t3 = dp[2][0]; int t4 = dp[0][1..
IP 주소 IP 주소는 이진수 32자리로 이뤄진 각각의 호스트를 구분하기 위해 사용하는 주소. 이진수 8자리를 '옥텟'이라고 부른다. 즉, IP 주소는 4개의 옥텟으로 구성된 주소이다. 하지만 이진수를 그대로 사용하면 보기 힘들기 때문에 익숙한 십진수로 바꿔서 사용한다. 일반적으로 사용하는 라우터에 배정해야하는 IP 주소는 2개이다. 하나는 이더넷 인터페이스 용이고 다른 하나는 시리얼(Serial) 인터페이스 용이다. (네트워크 구성에 따라 달라질 수 있다) 이더넷용은 우리가 부여받은 번호 중에 하나를 쓰는 것이고, 시리얼은 우리가 접속하는 ISP 업체에 따라 다르므로 인터넷 제공업체에 문의해서 사용해야한다. 라우터가 접속하는 상대편(ISP 업체) 라우터의 시리얼 인터페이스와 같은 IP 주소를 맞춰야한다..
11060번: 점프 점프 boj.kr 풀이 BFS와 동적계획법을 사용해서 해결했다. 현 위치에서 가장 멀리 뛴다고해서 최적해가 되지 않는다. 따라서 현 위치에서 뛸 수 있는 위치들을 모두 queue에 넣어줘서 최소값을 구했다. 코드 C++ #include #include #include using namespace std; int n; vector a, visited; int bfs() { visited = vector(n, 987654321); queue q; q.push(0); visited[0] = 0; while (!q.empty()) { int cur = q.front(); q.pop(); for (int i = 1; i = n) break; // 범위를 벗어나면 멈춘다 if (visited[c..
랜카드 역할 랜카드는 유저의 데이터를 케이블에 실어서 허브나 스위치, 라우터 등으로 전달해주고 자신에게 온 데이터를 CPU에게 전달해주는 역할을 한다. Plus and Play (P&P) PC가 알아서 랜카드 드라이버를 설치해서 네트워크에 연결하는 기 랜카드의 선택 PC의 버스(Bus) 방식에 따라 랜카드를 선택해야한다. 크게 3가지로 나눌 수 있는데, PCI 방식, ISA 방식, EISA 방식이 있다. 버스 (Bus) : 컴퓨터에서 데이터가 지나다니는 길 랜카드에 접속하는 케이블의 종류에 따라서 TP 포트를 가진 랜카드, BNC나 AUI 포트를 가진 랜카드, 광케이블과 접속하는 랜카드 등으로 종류를 나눌 수 있다. 허브 한마디로 멀티포트 리피터(Multiport Repeater)라고 할 수 있다. 즉,..
1259번: 팰린드롬수 boj.kr 풀이 인덱스 2개를 각각 양 끝을 가리키도록 초기화한 뒤, 서로 교차될 때까지 비교해주는 방식으로 해결했다. 이 때 구현을 쉽게 하기 위해서 숫자를 문자열로 입력받았다. 코드 C++ #include using namespace std; int main() { while (true) { string tmp; cin >> tmp; if (tmp == "0") break; int len = tmp.length(); int left = 0; int right = len - 1; bool is_palindrome = true; while (left