인덱스 바꾸기
class Solution {
public String solution(String my_string, int num1, int num2) {
StringBuilder sb = new StringBuilder();
char[] chars = my_string.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (i == num1) {
sb.append(chars[num2]);
} else if (i == num2) {
sb.append(chars[num1]);
} else {
sb.append(chars[i]);
}
}
return sb.toString();
}
}
Java
복사
가장 큰 수 찾기
class Solution {
public int[] solution(int[] array) {
int max = array[0];
int idx = 0;
for (int i = 1; i < array.length; i++) {
if (array[i] > max) {
max = array[i];
idx = i;
}
}
int[] answer = new int[2];
answer[0] = max;
answer[1] = idx;
return answer;
}
}
Java
복사
배열 회전 시키기
package programmers.CodingBegginerTraining;
import java.util.*;
public class PROB12 {
public int[] solution(int[] numbers, String direction) {
List<Integer> answer = new ArrayList<>();
if (direction.equals("right")) {
answer.add(numbers[numbers.length - 1]);
for (int i = 0; i < numbers.length - 1; i++) {
answer.add(numbers[i]);
}
} else if (direction.equals("left")) {
for (int i = 1; i < numbers.length; i++) {
answer.add(numbers[i]);
}
answer.add(numbers[0]);
}
return answer.stream().mapToInt(i -> i).toArray();
}
}
Java
복사
외계 행성의 나이
package programmers.CodingBegginerTraining;
public class PROB13 {
public String solution(int age) {
char[] chars = new char[10];
char alphabet = 'a';
for (int i = 0; i < chars.length; i++) {
chars[i] = alphabet++;
}
StringBuilder sb = new StringBuilder();
String ageToString = String.valueOf(age);
for (int i = 0; i < ageToString.length(); i++) {
int idx = Integer.parseInt(String.valueOf(ageToString.charAt(i)));
sb.append(chars[idx]);
}
return sb.toString();
}
}
Java
복사
피자 나눠 먹기 (2)
class Solution {
public int solution(int n) {
int count = 1;
while (true) {
if ((6 * count) % n == 0) {
return count;
}
count ++;
}
}
}
Java
복사
369 게임
package programmers.CodingBegginerTraining;
public class PROB14 {
public int solution(int order) {
String intToStr = String.valueOf(order);
int answer = 0;
for (int i = 0; i < intToStr.length(); i++){
if (intToStr.charAt(i) == '3' || intToStr.charAt(i) == '6' || intToStr.charAt(i) == '9') {
answer++;
}
}
return answer;
}
}
Java
복사
약수 구하기
import java.util.*;
class Solution {
public int[] solution(int n) {
List<Integer> numbers = new ArrayList<>();
for (int i = 1; i <= n; i ++) {
if (n % i == 0) {
numbers.add(i);
}
}
return numbers.stream().mapToInt(i -> i).toArray();
}
}
Java
복사
숫자 찾기
package programmers.CodingBegginerTraining;
public class PROB15 {
public static void main(String[] args) {
int num = 29183;
int k = 1;
System.out.println(solution(num, k));
}
public static int solution(int num, int k) {
char[] numbers = String.valueOf(num).toCharArray();
for (int i = 0; i < numbers.length; i++) {
if (Integer.parseInt(String.valueOf(numbers[i])) == k) {
return i + 1;
}
}
return - 1;
}
}
Java
복사
문자열 정렬하기 (2)
package programmers.CodingBegginerTraining;
import java.util.Arrays;
public class PROB16 {
public String solution(String my_string) {
char[] chars = my_string.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (chars[i] >= 'A' && chars[i] <= 'Z') {
chars[i] = Character.toLowerCase(chars[i]);
}
}
Arrays.sort(chars);
return new String(chars);
}
}
Java
복사
합성수 찾기
package programmers.CodingBegginerTraining;
public class PROB17 {
public static void main(String[] args) {
int n = 10;
System.out.println(solution(n));
}
public static int solution(int n) {
int count = 0;
int number = 0;
for (int i = 4; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if ( i % j == 0) {
number++;
}
}
if (number > 2) {
count++;
number =0;
}
}
return count;
}
}
Java
복사
중복된 문자 제거
class Solution {
public String solution(String my_string) {
String answer = "";
for (int i = 0; i < my_string.length(); i++) {
if(my_string.indexOf(my_string.charAt(i)) == i){
answer += my_string.charAt(i);
}
}
return answer;
}
}
Java
복사