반응형
https://www.acmicpc.net/problem/2440
2440번: 별 찍기 - 3
첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제
www.acmicpc.net
별을 기본 별찍기의 역삼각형으로 출력한다
출력해야할 라인의 넘버 i는 입력 N개이므로, for문을 사용하여 n번 반복해준다.
for (int i = 1; i <= N; i++) {
/*
각 라인마다 별을 출력하는 코드 여기에 작성
*/
cout << endl; //한 줄을 출력한 뒤에는 한 줄 내리기
}
기본 별찍기와 다른 점은 역삼각형 형태라는 것이다.
즉, 각 줄에 출력해야하는 별의 개수는 입력 N에서 해당 넘버 i를 뺀 것보다 하나 많다.
예를 들어 입력 N이 5일 때 4번째 라인의 별의 수는 N - i + 1 = 5 - 4 + 1 = 2가 되는 것을 알 수 있다.
이것을 다른 방식으로도 표현하면, 해당 넘버 i부터 N까지의 개수라고도 표현 할 수 있다.
위와 같은 예시로, 4번째 라인 일 때 입력 N인 5까지의 개수는 4, 5로 2개이다.
따라서 각 라인의 별을 출력하는 코드는 다음과 같다.
for (int j = i; j <= N; j++) {
cout << "*";
}
[BOJ-2440.cpp]
#include <iostream>
using namespace std;
int main() {
int N = 0;
cin >> N;
for (int i = 1; i <= N; i++) {
for (int j = i; j <= N; j++) {
cout << "*";
}
cout << endl;
}
}
반응형
'Online-Judge > Baekjoon' 카테고리의 다른 글
[BOJ] C++ 2442번 별 찍기 - 5 (0) | 2021.05.16 |
---|---|
[BOJ] C++ 2441번 별 찍기 - 4 (0) | 2021.05.15 |
[BOJ] C++ 2439번 별 찍기 - 2 (0) | 2021.05.15 |
[BOJ] C++ 2438번 별 찍기 - 1 (0) | 2021.05.14 |
[BOJ] C++ 2739번 구구단 (0) | 2021.05.14 |
댓글