기본 콘텐츠로 건너뛰기

프로그래머스 - 삼각형출력하기

public class PrintTriangle {
    public String printTriangle(int num){
        String ret = "";
        for(int i=0;i<num;i++) {
            for(int j=0;j<=i;j++) {
                ret+="*";
            }
            ret+="\n";
        }

        return ret;     
    }

    // 아래는 테스트로 출력해 보기 위한 코드입니다.
    public static void main(String[] args) {
        PrintTriangle pt = new PrintTriangle();
        System.out.println( pt.printTriangle(3) );
    }
}

아래와 같은 풀이가 있는데 참신하다. 당연히 2중 반복문으로 풀었는데 하나로 풀어내다니.. 배워야겠다.
public class PrintTriangle {
    public String printTriangle(int num){
    String result = "";
        String stars = "*";
        for(int i=0; i<num; ++i){
            result += stars+"\n";
            stars += "*";
        }
        return result;
    }

    // 아래는 테스트로 출력해 보기 위한 코드입니다.
    public static void main(String[] args) {
        PrintTriangle pt = new PrintTriangle();
        System.out.println( pt.printTriangle(3) );
    }
}

댓글

이 블로그의 인기 게시물

프로그래머스 - 행렬의 곱셈

머리속에서는 쉽지만 막상 구현하면 헷갈려서 잘 틀리는 행렬곱... class ProductMatrix { public int [][] productMatrix ( int [][] A , int [][] B ) { if ( A [ 0 ]. length != B . length ) return null ; int [][] answer = new int [ A . length ][ B [ 0 ]. length ]; for ( int i = 0 ; i < A . length ; i ++) { for ( int j = 0 ; j < B [ 0 ]. length ; j ++) { for ( int k = 0 ; k < B . length ; k ++) { answer [ i ][ j ]+=( A [ i ][ k ]* B [ k ][ j ]); } } } return answer ; } public static void main ( String [] args ) { ProductMatrix c = new ProductMatrix (); int [][] a = { { 1 , 2 }, { 2 , 3 } }; int [][] b = { { 3 , 4 }, { 5 , 6 } }; // 아래는 테스트로 출력해 보기 위한 코드입니다. System . out . println ( "행렬의 곱셈 : " + c . productMatrix ( a , b )); } }