자료구조 & 알고리즘/프로그래머스

Level 2. 멀쩡한 사각형

diesuki4 2023. 6. 10. 06:20
Level 2. 멀쩡한 사각형

 

 

대각선을 일차 함수로 생각해 int 형변환으로 소숫점을 날리면서 더하면 된다.

 

#include <iostream>

#define f(x) int(a * (x) + b)

using namespace std;

long long solution(int w, int h)
{
    long long answer = 0;
    double b = h, a = -(b / w);

    for (int x = 1; x <= w; ++x)
        answer += f(x);

    return answer + answer;
}