스터디사이트 : https://www.hackerrank.com
JAVA 알고리즘 : 특수기호로 직각삼각형 만들기
※ 코딩실습 - 조건
입력받은 n 만큼의 행크기로 계단모양의 직각삼각형을 만들어 보아라.
n과 공백을 이용하여 구하면 된다.
마지막 행에는 공백이 없겠죠?
입력
6
출력
#
##
###
####
#####
######
코딩 & 결과
위에 입력 예 처럼 6을 입력 받았다고 하면,
행은 6행.
1행 - 공백 5개 / # 1개
2행 - 공백 4개 / # 2개
3행 - 공백 3개 / # 3개
4행 - 공백 2개 / # 4개
5행 - 공백 1개 / # 5개
6행 - 공백 0개 / # 6개
행의 수가 #의 갯수와 똑같고,
공백의 갯수는 (입력받은 행의 수) - (행갯수 or # 갯수) 를 하면 되겠다.
그러면 위의 예에서는 공식화를 해보면,
# 갯수 : n
공백 갯수 : 행갯수-n
이 되는 것이다.
public static void main(String[] args) { /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */ Scanner scan = new Scanner(System.in); int n = scan.nextInt(); String spa = " "; // 공백 저장하는 변수 String mark = "#"; // # 저장하는 변수 String res = ""; // 한 행에 대한 결과 저장 & 출력하는 변수 for(int i=1; i<=n; i++){ res=""; // 새로운 행이 넘어갈 때마다 res 변수 초기화 for(int j=n-i; j>=1; j--){ res = res + spa; // 공백 갯수만큼 res변수에 추가 } //end for j res = res + mark; // 공백 추가 후 # 갯수를 res변수 추가 mark = mark + "#"; // 한 행이 넘어갈수록 # 는 한개씩 쌓아둠 System.out.println(res); } //end for } |
결과 : # ## ### #### ##### ###### |
'JAVA > JAVA 자료구조 알고리즘' 카테고리의 다른 글
JAVA 알고리즘 : AM, PM시간을 24시간형으로 변형하기 (0) | 2016.07.09 |
---|---|
JAVA 알고리즘 : 독캔디를 먹는 죄수 찾기 (0) | 2016.07.08 |
JAVA 알고리즘 : 양수, 음수, 0 파악하여 각 갯수를 비율로 출력하기 (0) | 2016.07.08 |
JAVA 알고리즘 : 이차원 배열 각 대각선 합의 차이값 구하기(Diagonal Difference) (0) | 2016.07.02 |
JAVA 알고리즘 : 큰 수의 합 (0) | 2016.07.01 |