일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 문자열포맷
- 객체프로그래밍이란
- 카카오코테
- 카카오기출
- 백준 1000번
- 개발상식
- 자바
- 카카오1차
- 프렌즈4블록
- 프로그래머스
- 자바문자열
- 힙정렬자바
- 백준 1924번 java
- java
- 알고리즘
- 카카오코딩테스트
- 자료구조 트리
- heap정렬
- 자료구조힙
- 코딩테스트기출
- 코테준비
- java method
- heap
- 백준
- 객체프로그래밍
- 백준 1000번 java
- 프렌즈4블록java
- Java heap
- 공부정리
- 백준 1924번
- Today
- Total
목록CS/알고리즘 풀이 (49)
일단 시작해보는 블로그
코드 설명 변수/객체 boardC : 입력받은 배열 board를 char배열로 잘라서 char[][] 에 넣음 marked : 한번 루프를 돌 때, 2x2블록이 완성되면 true. 완성된 블록의 개수를 셀 때도 사용됌. finalFlag : 더 이상 2x2블록이 없을 때, finalFlag는 false가 되어 최종 루프를 빠져나가기 위해 사용됌. 메서드 (-> 메서드에 m, n을 넣은 이유는 전역변수로 선언을 하기 번거롭기 때문.) 1 .checkBlock(int m, int n) 2x2가 있는 블록을 체크하고 블록이 완성되면 해당하는 인덱스에 marked[i][j] = true로 표시. 2. processBlock(int m, int n) - > int로 반환 marked값을 보고 true인 것은 제거..
java, bfs로 구현한 코드 전형적인 graph응용문제였고 이에 따라 graph에 대하여 전반적으로 공부했다. IDE용 코드 package codingTest; import java.util.*; class Node{ int x; int y; Node(int x, int y){ this.x = x; this.y = y; } } public class kakao_coloringbook { static boolean[][] marked = null; static int[][] pictures = null; public static int bfs(int i, int j) { //System.out.println(marked[i][j]); int tmpPicture = pictures[i][j]; Syste..
// 방향 없는 그래프, 연결된 그래프 개수 import java.util.ArrayList; import java.util.Scanner; import java.util.Stack; import java.util.List; public class Main { static boolean[] marked = null; static List none_direction_graph = null; //재귀호출 static void dfs(int n){ marked[n] = true; // 자식노드를 linkedNodeArr에 담는다. List linkedNodeArr = none_direction_graph.get(n); for(int i=0; i
뒤에서 부터 계산을 해주기 위해서 자료구조는 스택을 사용했고 점수, 등급, 보너스를 따로 저장해서 하나씩 꺼내서 계산했다. ** 처음에 rank인 S, D, T를 입력받을 때, String으로 할당했다가 오류가 났다. 그 이유는 당연히 글자 하나씩 있으면 데이터타입을 char로 생각하기 때문에 문자열 비교를 ex) char a = 'a'; char b = 'b'; a.equals(b); //노노노!!에러남 a == b 혹은 a != b 이렇게 비교해야함. package codingTest; import java.util.Stack; public class kakao_dart { public static void main(String[] args) { System.out.println(solution("1..
package string_algorithm; import java.util.Scanner; //주어진 문자를 역순으로 담기 public class StringReverse { //substring, String 변수 하나만 할당 static String solution1(String str){ //String의 substring(i-1,i) String reverse = ""; for(int i=str.length(); i>0; i--){ reverse += str.substring(i-1, i); } return reverse; } //toCharArray()사용해서 새로운 배열에 하나씩 담기 static void solution2(String str){ char[] charArr = str.toCh..
package dp; import java.util.Scanner; public class backjoon_2193 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); long[] d = new long[N+1]; d[1] = 1; if(N >=2){ d[2] = 1; } for(int i=3; i
https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 | 프로그래머스 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브는 사용자들이 편리하게 다양한 뉴스를 찾아볼 수 있도록 문제점을 개선하는 업무를 맡게 되었다. 개발의 방향을 잡기 위해 튜브는 우선 최근 화제가 되고 있는 카카오 신입 개발자 공채 관련 기사를 검색해보았다. 카카오 첫 공채..'블라인드' 방식 채용 카카오, 합병 후 첫 programmers.co.kr 처음엔 왜 Queue를 가지고 풀려고 했었는지 모르겠다ㅠㅠ..