✏️ 문제
* 설명
A, B 두 사람이 가위바위보 게임을 합니다.
총 N번의 게임을 하여 A가 이기면 A를 출력하고, B가 이기면 B를 출력합니다.
비길 경우에는 D를 출력합니다.
가위, 바위, 보의 정보는 1:가위, 2:바위, 3:보로 정하겠습니다.
예를 들어 N=5이면
두 사람의 각 회의 가위, 바위, 보 정보가 주어지면 각 회를
누가 이겼는지 출력하는 프로그램을 작성하세요.
* 입력
첫 번째 줄에 게임 횟수인 자연수 N(1<=N<=100)이 주어집니다.
두 번째 줄에는 A가 낸 가위, 바위, 보 정보가 N개 주어집니다.
세 번째 줄에는 B가 낸 가위, 바위, 보 정보가 N개 주어집니다.
* 출력
각 줄에 각 회의 승자를 출력합니다. 비겼을 경우는 D를 출력합니다.
🔍풀이
public char[] solution(int n, int[] a, int[] b) {
char[] answer = new char[n];
for (int i = 0; i < n; i++) {
if (a[i] == b[i]) answer[i] = 'D';
else if (a[i] == 1 && b[i] == 3) answer[i] = 'A';
else if (a[i] == 2 && b[i] == 1) answer[i] = 'A';
else if (a[i] == 3 && b[i] == 2) answer[i] = 'A';
else answer[i] = 'B';
}
return answer;
}
✏️ 문제
* 설명
1) 피보나키 수열을 출력한다.
피보나치 수열이란 앞의 2개의 수를 합하여 다음 숫자가 되는 수열이다.
2) 입력은 피보나치 수열의 총 항의 수 이다.
만약 7이 입력되면 1 1 2 3 5 8 13을 출력하면 된다.
* 입력
첫 줄에 총 항수 N(3<=N<=45)이 입력된다.
* 출력
첫 줄에 피보나치 수열을 출력합니다.
🔍풀이
public int[] solution(int n) {
int[] answer = new int[n];
answer[0] = 1;
answer[1] = 1;
for(int i = 2; i < n; i++){
answer[i] = answer[i-1] + answer[i-2];
}
return answer;
}
배열 사용하지 않고 풀어보기
public void solution(int n){
int a=1, b=1, c;
System.out.print(a +" " + b)
for(int i = 2; i < n; i++){
c = a + b
a = b;
b = c;
System.out.print(" " + c)
}
}