728x90
반응형
728x90
반응형

문제는 다음과 같습니다. 

https://www.acmicpc.net/problem/9095


 
import java.util.Scanner;
public class Test9095 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt(); //방법의 수를 테스트할 갯수
        int[] arr = new int[11];
		
        arr[1]=1; 
        arr[2]=2;
        arr[3]=4;
        //경우의 수 추출
        for(int i=0; i<T; i++){
            int n = sc.nextInt();
            for(int j=4; j<=n; j++){
                arr[j]=arr[j-3]+arr[j-2]+arr[j-1];
            }
            System.out.println(arr[n]);
        }

    }
}
 


결과는 다음과 같습니다.


728x90
반응형
728x90
반응형

문제는 다음과 같습니다.

https://www.acmicpc.net/problem/11399



 
import java.util.Scanner;

public class ATMTest {
	public static void main(String[] args){
		System.out.println("백준알고리즘 11399번 ATM");
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt(); //인원 수 입력
		int[] people = new int[N]; //배열 생성
		for(int i=0; i<N; i++){
			people[i] = sc.nextInt();
		}
		for(int i=0; i<people.length; i++){ //정렬
			for(int j=i+1; j<people.length; j++){
				if(people[i]>people[i+1]){
					int imsi = people[i];
					people[i] = people[i+1];
					people[i+1] = imsi;
				}
			}
		}
		int min=0;
		for(int i=0; i<people.length; i++){
			for(int j=0; j<=i; j++){
				min += people[j];
			}
		}
		System.out.println(min);
	}
}
 

결과는 다음과 같습니다.



728x90
반응형
728x90
반응형

문제는 다음과 같습니다.

https://www.acmicpc.net/step/3

 

 
import java.util.Scanner;

public class ForTestMain {
    public static void main(String[] args) {
    	Scanner sc = new Scanner(System.in);
    	int a = sc.nextInt();
        
    	System.out.println("2739=======================");
    	for(int i=1; i<=9; i++){ //2739번
    		System.out.println(a+" * "+i+ " = "+ a*i);
    	}
        
    	System.out.println("2741=======================");
    	for(int i=1; i<=a; i++){ //2741번
    		System.out.println(i);
    	}
        
    	/*System.out.println("2742=======================");
    	for(int i=a; a>=1; a--){ //2742번, a값이 변해서 주석처리했습니다.
    		System.out.println(a);
    	}*/
        
    	System.out.println("2438=======================");
    	for(int i=1; i<=a; i++){ //2438번
    		for(int j=1; j<=i; j++){
    			System.out.print("*");
    		}
            System.out.println();
    	}
        
    	System.out.println("2439=======================");
    	for(int i=1; i<=a; i++){ //2439번
    		for(int j=a-i; j>0; j--){
    			System.out.print(" ");
    		}
    		for(int k=i; k>0; k--){
    			System.out.print("*");
    		}
    		System.out.println();
    	}
        
    	System.out.println("2440=======================");
    	for(int i=a; i>=1; i--){ //2440번
    		for(int j=1; j<=i; j++){
    			System.out.print("*");
    		}
            System.out.println();
    	}
        
    	System.out.println("2441=======================");
    	for(int i=0; i<a; i++){
    		for(int j=a-i; j<a; j++){
    			System.out.print(" ");
    		}
    		for(int k=a-i; k>0; k--){
    			System.out.print("*");
    		}
    		System.out.println();
    	}
        
    }       
}

결과는 아래와 같습니다.

 

728x90
반응형
728x90
반응형

소수 구하기 문제 입니다.

https://www.acmicpc.net/problem/1929

 

먼저 소수에 대한 개념을 알아야겠죠?

소수는 약수가 1과 자기 자신 뿐인 수인데요

어떻게 구해야 할까??

자기 자신보다 작은 수로 나누어, 하나라도 나눠진다면 소수가 아니겠죠

저는 나머지가 0인 경우와 분자와 분모가 같다면 소수라 가정하여 코드를 짰습니다.

 

 

import java.util.Scanner;

public class test {
	public static void main(String[] args) {
		System.out.print("수를 입력 : ");
		Scanner sc = new Scanner(System.in);
		int scInt = sc.nextInt();
		System.out.print("수를 입력 : ");
		int scInt2 = sc.nextInt();
		for(int i=scInt; i<=scInt2; i++){
			for(int j=2; j<=i; j++){
				if(i%j==0){
					if(i==j){
						System.out.print(i+" ");
					}else break;
				}
			}
		}
		System.out.println();
		System.out.println(scInt+"이상 "+scInt2+"이하의 소수입니다.");
	}
	
}

 

실행 결과입니다!

 

 

728x90
반응형
728x90
반응형

문제는 다음과 같습니다.

https://www.acmicpc.net/problem/1003



import java.util.Scanner; public class test { private static int fiboZero = 0; private static int fiboOne = 0; public static int fibonacci(int n) { if(n==0){ fiboZero++; return 0; }else if(n==1){ fiboOne++; return 1; }else return fibonacci(n-1) + fibonacci(n-2); } public static void main(String[] args) { System.out.print("반복할 횟수를 입력하세요 : "); Scanner sc = new Scanner(System.in); int num = sc.nextInt(); for (int i=0; i<num; i++) { fibonacci(sc.nextInt()); System.out.println(i+"번째 수"+fiboZero + " "+(i+1)+"번째 수" + fiboOne); //초기화 부분 fiboZero = 0; fiboOne = 0; } } }

결과입니다.



추가로 n번째 피보나치 수열을 구하는 코드입니다.

import java.util.Scanner;

public class test {
	public static int fibonacci(int n){
		if(n==0){
			return 0;
		}
		else if(n==1 || n==2){
			return 1;
		}else{
			return fibonacci(n-1) + fibonacci(n-2);
		}
	}

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("수를 입력하세요 : ");
		int scInt = sc.nextInt();
		for(int i=0; i<=scInt; i++){
			System.out.print(fibonacci(i)+" ");
		}
	}
	
}



결과입니다.



728x90
반응형
728x90
반응형

+ Recent posts