class Solution {
public int solution(int a, int b, int c, int d) {
int[] count = new int[7];
count[a]++;
count[b]++;
count[c]++;
count[d]++;
for(int i=1;i<=6;i++) {
if(count[i] ==4) {
return 1111* i;
}
}
for(int i =1; i<=6;i++) {
if(count[i] ==3) {
int p = i;
int q = 0;
for(int j=1;j<=6;j++) {
if(count[j] == 1) {
q = j;
break;
}
}
return (int) Math.pow(10*p+q,2);
}
}
int p = 0, q =0;
boolean twopairs = false;
for(int i = 1; i <= 6;i++) {
if(count[i] ==2) {
if(p==0) {
p=i;
} else{
q=i;
twopairs = true;
}
}
}
if(twopairs) {
return (p+q) * Math.abs(p-q);
}
for(int i =1;i<=6;i++) {
if(count[i] ==2) {
int r1 =0, r2=0;
for(int j=1;j<=6;j++) {
if(count[j] ==1) {
if(r1==0) r1 =j;
else r2 =j;
}
}
return r1*r2;
}
}
int min = 7;
for(int i=1;i<=6;i++) {
if(count[i] ==1) {
min = Math.min(min,i);
}
}
return min;
}
}

class Solution {
public String solution(String my_string, int[] index_list) {
StringBuilder answer = new StringBuilder();
for(int i=0;i<index_list.length;i++) {
answer += my_string[i];
}
return answer;
}
}
class Solution {
public String solution(String my_string, int[] index_list) {
StringBuilder answer = new StringBuilder();
for(int i=0;i<index_list.length;i++) {
answer.append(my_string.charAt(index_list[i]));
}
return answer.toString();
}
}
문자열의 특정 위치의 문자를 가져올때는 charAt()을 사용해야됨
리턴타입이 String이라 .toString()을 붙여야함
class Solution {
public int solution(String number) {
int answer = 0;
answer = (int) number % 9;
return answer;
}
}
class Solution {
public int solution(String number) {
int answer = 0;
for(int i=0;i<number.length();i++) {
answer += number.charAt(i)-'0';
}
return answer % 9;
}
}
각 자리 숫자를 더하고 %9 하면 됨
문자열이라 반복문 돌면서 숫자로 변환하는데 아스키 코드 0값이 48이라 문자열을 숫자로 변환하고 싶으면 '0'을 빼면 됨