일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 그리디
- 스택
- 백트래킹
- 후니의 쉽게 쓴 시스코 네트워킹
- Effective Java
- swea
- CS
- 알고리즘
- Network
- 수학
- 이분탐색
- 구현
- 투 포인터
- java
- mst
- 유니온 파인드
- 플로이드-와샬
- dfs
- 에라토스테네스의 체
- 동적계획법
- 세그먼트 트리
- BFS
- 시뮬레이션
- 완전탐색
- 위상정렬
- JUnit 5
- 백준
- 문자열
- Kotlin
- 프로그래머스
목록전체 글 (291)
반갑습니다!
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 완전탐색을 해서 가능한 경우를 모두 확인해주었다. set을 통해서 중복되는 경우를 걸러주었다. 코드 #include #include #include using namespace std; bool visited[10]; set ans; void dfs(vector& user_id, vector& banned_id, int idx) { if (idx == banned_id.size()) { // set으로 중복 체크 string res = ""; for (int i = 0; i < user_id.size()..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 모든 시간을 millisec 단위로 변환하여 해결하였다. 문제는 1초간 처리하는 최대 갯수를 구하는 것이다. 입력값을 계산해서 시작 시간과 완료 시간을 구할 수 있는데, millisec로 변환했기 때문에 초 단위의 트래픽 처리량을 체크하기위한 별도의 처리를 해줘야한다. 예를 들어 13시 21분 3.001초에 1초간 트래픽 처리를 시작했다면 13시 21분 3초부터 4초까지 실시했다는 것을 알 수 있다. 이번에는 13시 21분 3.012초에 1초간 트래픽 처리를 했다면 13시 21분 3초부터 13시 21분 ..
String Java에서 String은 2가지의 생성 방법이 있는 특이한 자료형이다. new 키워드를 사용하는 방법 리터럴로 선언하는 방법 선언해서 사용하는 사람 입장에서는 똑같은 것처럼 여겨질 수 있지만, 사실 두 가지 방법에는 큰 차이가 있다. 예시 코드를 보면서 확인해보자. class Main { public static void main(String[] args) { String str1 = "Hello Java!"; String str2 = new String("Hello Java!"); if(str1.equals(str2)){ System.out.println(str1 + "과 " + str2 +"는 내용이 같습니다."); } else{ System.out.println(str1 + "과 " ..
14891번: 톱니바퀴 www.acmicpc.net 풀이 시뮬레이션 문제이다. 문제에 나온대로 구현하면 어렵지않게 해결할 수 있다. 구현을 쉽게 하기 위해서 반시계방향은 -1이 아닌 0으로 바꿔주었고, 톱니바퀴의 번호를 1씩 감소시켜 구현하였다. 코드 #include using namespace std; int k; int w[4][8]; int get_score() { int ret = 0; for (int i = 0; i < 4; i++) if (w[i][0]) ret += (1 = 1; i--) w[idx][i] = w[idx][i - 1]; w[idx][0] = tmp; } else { int tmp = w[idx][0]; for (int i = 0; i < 7; i++) w[idx][i] = w..
14890번: 경사로 www.acmicpc.net 풀이 시뮬레이션 문제이다. 모든 행과 열에 대해서 반대 방향으로 지나갈 수 있는지 확인하면 된다. 선형으로 탐색하며 경사로를 지을 수 있는지 확인하면 되는데, 이 때 경우는 총 4가지이다. 이전 높이와 현재 높이가 같은 경우 이전 높이가 현재 높이보다 1 높은 경우 이전 높이가 현재 높이보다 1 낮은 경우 모두 아닌 경우 1번의 경우 땅의 갯수를 증가시킨다. 2번의 경우 같은 높이인 땅의 길이가 l보다 짧으면 지나갈 수 없다 3번의 경우 현재 높이부터 l만큼 탐색하면서 높이 변화가 생기면 지나갈 수 없다 4번의 경우 항상 지나갈 수 없다 이 때 1, 2, 4의 경우는 어렵지 않게 구현할 수 있다. 3번의 경우를 조금 주의해야하는데 길이 l만큼 탐색을 한 ..