Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions 0602/Programmers/Lv1/예산_yu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import java.util.Arrays;

public class lv1_예산 {
public static void main(String[] args) {

int[] d = {1,3,2,5,4};
int budget = 9;
int answer = 0;

Arrays.sort(d);
int sum = 0;

for(int i=0; i<d.length; i++) {
sum += d[i];

if(sum> budget) {
break;
}
answer++;
}

System.out.println(answer);
}

}
26 changes: 26 additions & 0 deletions 0602/Programmers/Lv1/폰켓몬_yu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import java.util.HashSet;

public class lv1_폰켓몬 {
public static void main(String[] args) {
int[] nums = {3,3,3,2,2,2};
int answer = 0;
//

int n = nums.length;

HashSet<Integer> mon = new HashSet<>();

for(int i=0; i<n; i++) {
mon.add(nums[i]);
}

if(mon.size()>n/2) {
answer = n/2;
}else {
answer = mon.size();
}

System.out.println(answer);
}

}
52 changes: 52 additions & 0 deletions 0602/Programmers/Lv2/오픈채팅방_yu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import java.util.Arrays;
import java.util.HashMap;

public class lv2_오픈채팅방 {
public static void main(String[] args) {

String[] record = {"Enter uid1234 Muzi", "Enter uid4567 Prodo","Leave uid1234","Enter uid1234 Prodo","Change uid4567 Ryan"};
//

int ncnt = 0;

HashMap<String, String> user = new HashMap<>();

for(int i=0; i<record.length; i++) {
if(record[i].charAt(0) == 'E' || record[i].charAt(0) == 'L') {
ncnt++;
}

if(record[i].charAt(0) == 'E' || record[i].charAt(0) == 'C') {
user.put(record[i].split(" ")[1], record[i].split(" ")[2]);
}
}

String[] answer = new String[ncnt];

int idx = 0;

for(int i=0; i<record.length; i++) {

if(record[i].charAt(0) == 'C') {
continue;
}


if(record[i].charAt(0) == 'E') {
String id = record[i].split(" ")[1];
String nickname = user.get(id);
answer[idx] = nickname + "님이 들어왔습니다.";
}

if(record[i].charAt(0) == 'L') {
answer[idx] = user.get(record[i].split(" ")[1]) + "님이 나갔습니다.";
}

idx++;
}

System.out.println(Arrays.toString(answer));

}

}
83 changes: 83 additions & 0 deletions 0602/Programmers/Lv2/카카오프렌즈컬러링북_yu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
import java.util.Arrays;

public class lv2_카카오프렌즈컬러링북 {

static int[] dr = {-1, 1, 0, 0}; // 상하좌우
static int[] dc = {0, 0, -1, 1}; // 상하좌우
static boolean[][] visited;
static int m, n, g;
static int[][] pic;

public static void main(String[] args) {

int[][] picture = {{1, 1, 1, 0}, {1, 2, 2, 0}, {1, 0, 0, 1}, {0, 0, 0, 1}, {0, 0, 0, 3}, {0, 0, 0, 3}};
//

m = 6; // 그림 크기
n = 4; // 그림 크기 mxn

pic = new int[m][n];
visited = new boolean[m][n];

for(int i=0; i<m; i++) {
for(int j=0; j<n; j++) {
pic[i][j] = picture[i][j];
}
}


int cnt = 0;
int maxg = 0;

for(int r=0; r<m; r++) {
for(int c=0; c<n; c++) {
g=0;
if(!visited[r][c] && pic[r][c]>0) {
cnt++;
g =dfs(r, c);
}

if(maxg<g) {
maxg = g;
}
}
}

int[] answer = new int[2];
answer[0] = cnt;
answer[1] = maxg;


System.out.println(Arrays.toString(answer));

}


static int dfs(int r, int c) {

visited[r][c] = true;
int num = pic[r][c];

for(int i=0; i<4; i++) {

int nr = r+dr[i];
int nc = c+dc[i];


if(nr<0 || nc<0 || nr>=m|| nc>=n) {
continue;
}

if(visited[nr][nc] || pic[nr][nc] != num) {
continue;
}

dfs(nr, nc);
g++;
}
return g+1;


}

}