쾌락없는 책임 (공부)/알고리즘 문제풀이

백준 8393,10818, 2438, 2439, 2440

허스크 2020. 12. 26. 19:55
반응형

<8393 www.acmicpc.net/problem/8393>

#include <iostream>
using namespace std;
int main(){
    int n, sum = 0;
    cin >> n;
    for(int i = 1; i < n+1; i++){
        sum += i;
    }
    cout << sum << endl;
    return 0;
}

<10818 - 다시 한번www.acmicpc.net/problem/10818>

#include <iostream>
using namespace std;
int main(){
    int n, max, min;
    max = -1000000;      min = 1000000;
    cin >> n;
    if(n>1000000 || n<1)
        return 0;
    int num[n];

    for (int i = 0; i < n; i++){
        cin >> num[i];
        if(num[i] > 1000000 || num[i] < -1000000)
            return 0;
        if (num[i] > max)
            max = num[i];
        if (num[i] < min)
            min = num[i];
    }

    cout << min << " " << max;
}

- 실행시간이 너무 길다

- 맞기는 했는데 비교하는 알고리즘을 다시 짜봐야 할 듯

- 근데 다른사람 코드를 넣어봤는데도 시간이 오래 걸린다. 검수하는 케이스가 양이 방대한 케이스인가봄

 

<2438 - www.acmicpc.net/problem/2438>

#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    for(int i = 1; i < n+1; i++){
        for(int j = 0; j < i; j++){
            cout <<"*";
        }
        cout << endl;
    }
}

- 신입생땐 뭔 소리인지도 몰랐던 별찍기를 한 점에서 높이 평가

 

<2439 - www.acmicpc.net/problem/2439>

#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    for(int i = 1; i < n+1; i++){
        for(int j = 0; j < n-i; j++)
            cout << " ";
        for(int j = 0; j < i; j++)
            cout << "*";
        cout << endl;
    }
}

- i번째 줄에 있는 것 :  n-i만큼의 공백 후 i 만큼의 별

 

<2440 - www.acmicpc.net/problem/2440>

#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    // i 층에 있어야 할 것 n-i+1만큼의 별
    for(int i = 0; i < n; i++){
        for(int j = 0; j < n-i; j++)
            cout << "*";
        cout << endl;
    }
}
반응형