티스토리 뷰

반응형

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

 

14888번: 연산자 끼워넣기

첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 

www.acmicpc.net


문제

입력

출력

예제 입출력

알고리즘 분류

  • 브루트포스 알고리즘
  • 백트래킹

 



문제 접근 과정

백트래킹 문제였는데 재미있었다.

반복문 i는 4번 돌린다. 범위는 0부터 3으로 각각 0,1,2,3은 순서대로 +, -, *, /이다.
사칙 연산에 대해 값을 모두 탐색하였을 때, 그 값이랑 현재 값이랑 비교하여 큰 값은 maxValue에 저장, 작은 값은 minValue에 저장한다.



문제 풀이

 

#include <iostream>

using namespace std;

int main() {
    int count;
    bool flag=true;
    cin>>count;

    for (int i=1; i<=count; i++) {
        for (int j=1 ; j<=count-i; j++) {
            cout << " ";
        }
        for (int j=1 ; j<=i;j++) {
            cout << "*";

            if(i==j) {
                flag=false;
            }
        }
        if(!flag) {
            cout<<"\n";
            flag = true;
        }

    }
}

결과


마무리


NONE

좋아요로그인하지 않아도 누를 수 있습니다!

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함