본문 바로가기
백준

[백준] 15964번 - 이상한 기호

by 템닉___ 2024. 3. 18.

문제:

시도 횟수: 2번 (서브태스크1 30점)

처음 생각한 방법: 주어진 대로 입력 받은 후 식대로 계산시키도록 만들었다.

내 코드:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int a, b, result;
    cin >> a >> b;
    result = (a+b) * (a-b);
    cout << result;
    return 0;
}

당연히 맞을 줄 알고 있었는데 30점만 맞았다. 이런 적은 처음이었어서 신기하고 당황스러웠다. 
다시 생각해보니 최댓값이 100,001 * 99,999일텐데 근사해서 100,000의 제곱이라하면 0의 개수가 10개가 된다.
int는 0의 개수가 9개까지이므로 long long으로 바꿔준다.

#include <bits/stdc++.h>
using namespace std;

int main()
{
    long long a, b, result;
    cin >> a >> b;
    result = (a+b) * (a-b);
    cout << result;
    return 0;
}

모범답안: 비슷비슷하다. 

내 코드의 개선할 점: 헤더, cin, cout 
지금까지 푼 것들을 하나도 정리를 안해서 아마 앞으로 몇십문제 정도에서 계속 같은 개선점이 있을 것이다. 
따라서 헤더, 네임스페이스, cin/cout의 입출력 속도 개선 등의 문제는 앞으로 적지 않겠다.

알고리즘 분류: 수학, 구현, 사칙연산

난이도: 브론즈 V

복습하면서 참고해본 블로그 목록:  X

'백준' 카테고리의 다른 글

[백준] 2738번 - 행렬 덧셈  (0) 2024.03.18
[백준] 2475번 - 검증수  (0) 2024.03.18
[백준] 2754번 - 학점계산  (0) 2024.03.18
[백준] 10872번 - 팩토리얼  (0) 2024.03.18
[백준] 2741번 - N 찍기  (0) 2024.03.18