Skip to content
21 changes: 21 additions & 0 deletions HyoJeong/4week_daily/Day0.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import java.util.*;

public class counting {
public static boolean main(String[] args) {
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine();

int countp = 0;
int county = 0;

for(char c : s.toCharArray())
{
if (c == 'p'||c == 'P')
countp++;
else if(c == 'y'|| c == 'Y')
county++;

}
return countp == county;
}
}
27 changes: 27 additions & 0 deletions HyoJeong/4week_daily/Day09.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import java.util.*;

public class Main {
public static void main(String[] args){
//Set <String> PW = new HashSet<String>();
ArrayList <String> PW = new ArrayList<String>();
String reverse = "";

Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());

for (int i = 0; i<n; i++){
String password = scanner.nextLine();
PW.add(password);
reverse = new StringBuilder(password).reverse().toString();

if(PW.contains(reverse)) {
int length = password.length();
char midChar = password.charAt(length / 2);

System.out.println(length + " " + midChar);
return;
}
}
scanner.close();
}
}
18 changes: 18 additions & 0 deletions HyoJeong/4week_daily/Day10.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import java.util.*;

class Solution {
public int solution(int[] nums) {
int answer = 0;
int count = 0;

HashMap <Integer, Integer> map = new HashMap <>();

//각 폰켓몬 종류를 HashMap에 저장
for(int i : nums){
map.put(i, 1);
}

//폰켓몬 종류와 N/2 중 더 작은 값을 출력
return Math.min(map.size(), nums.length / 2);
}
}
25 changes: 25 additions & 0 deletions HyoJeong/4week_daily/Day11.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import java.util.*;

class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashSet <String> set = new HashSet<>();

for (String s : participant){
if (!set.contains(s)){
set.add(s);
}
else
set.remove(s);
}
for (String s : completion){
if(!set.contains(s)){
set.add(s);
}
else
set.remove(s);
}
answer = String.join("", set);
return answer;
}
}
44 changes: 44 additions & 0 deletions HyoJeong/4week_daily/Day12.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());

Stack<Integer> S = new Stack<>();

for (int k = 0; k < n; k++) {
String function = scanner.next();
switch (function) {
case "push":
int i = Integer.parseInt(scanner.next());
S.push(i);
break;
case "pop":
if (S.isEmpty())
System.out.println(-1);
else {
System.out.println(S.pop());
}
break;
case "size":
System.out.println(S.size());
break;
case "empty":
if (S.isEmpty())
System.out.println(1);
else
System.out.println(0);
break;
case "top":
if (S.isEmpty())
System.out.println(-1);
else {
System.out.println(S.peek());
}
break;
}
}
scanner.close();
}
}
24 changes: 24 additions & 0 deletions HyoJeong/4week_daily/Day13.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());

Stack<String> S = new Stack<>();

for (int i = 0; i < n; i++) {
String sentence = scanner.nextLine();
String[] RS = sentence.split(" ");
for (String rs : RS){
S.push(rs);
}
System.out.print("Case #" + (i + 1) + ": ");
while (S.isEmpty() == false){
System.out.print(S.pop() + " ");
}
System.out.println();
}
}

}
49 changes: 49 additions & 0 deletions HyoJeong/4week_daily/Day14.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());

LinkedList <Integer> Q = new LinkedList<>();

for (int k = 0; k < n; k++) {
String function = scanner.next();
switch (function) {
case "push":
int i = Integer.parseInt(scanner.next());
Q.addLast(i);
break;
case "pop":
if (Q.isEmpty())
System.out.println(-1);
else {
System.out.println(Q.removeFirst());
}
break;
case "size":
System.out.println(Q.size());
break;
case "empty":
if (Q.isEmpty())
System.out.println(1);
else
System.out.println(0);
break;
case "front":
if (Q.isEmpty())
System.out.println(-1);
else
System.out.println(Q.getFirst());
break;
case "back":
if (Q.isEmpty())
System.out.println(-1);
else
System.out.println(Q.getLast());
break;
}
}
scanner.close();
}
}
1 change: 1 addition & 0 deletions HyoJeong/4week_daily/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

1 change: 1 addition & 0 deletions HyoJeong/SchoolStudy/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

23 changes: 23 additions & 0 deletions Main7_1.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import java.util.*;

public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
String[] words = new String[5];
String[] result = {};

for (int i=0; i<5; i++){
words[i] = sc.nextLine();
}

StringBuilder sb = new StringBuilder();
for (int x=0; x<15; x++){
for (int y=0; y<5; y++){
if (x<words[y].length())
sb.append(words[y].charAt(x));
}
}

System.out.print(sb);
}
}
31 changes: 31 additions & 0 deletions Main7_2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int scan = sc.nextInt();
sc.nextLine();

//StringBuilder 배열 생성, but 각 요소는 null (생성만 해 둔 상태로 StringBuilder 객체 가리키지 X)
StringBuilder[] result = new StringBuilder[scan];

for (int i = 0; i < scan; i++) {
String input = sc.nextLine();
String[] example = input.split(" ");

int k = Integer.parseInt(example[0]);
String word = example[1];
result[i] = new StringBuilder(); //각 배열 요소에 할당

for (int a = 0; a< word.length(); a++){
for (int b = 0; b < k; b++) {
result[i].append(word.charAt(a));
}
}
}

for(StringBuilder s : result){
System.out.println(s);
}
}
}
24 changes: 24 additions & 0 deletions Solution7_3.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import java.util.*;

class Solution {
public int[] solution(int[] array, int[][] commands) {
int[] result = new int[commands.length];

for (int i = 0; i < commands.length; i++) {
int start = commands[i][0] - 1; //자르기 시작할 위치
int end = commands[i][1]; //자르기 끝낼 위치
int k = commands[i][2]; //k번째

//부분 배열 생성
int[] slicedArray = Arrays.copyOfRange(array, start, end);

//정렬
Arrays.sort(slicedArray);

//k번째 원소 출력
result[i] = slicedArray[k - 1];
}

return result;
}
}