Yukicoder080 四角形を描こう

問題概要

A君は四角形を描こうとしています。
描く四角形は正方形か長方形でなければなりません。
また、どの辺の長さも整数cmでなければなりません。
A君の持っている鉛筆はあとちょうど$D$cmしか線が引けなさそうです。
A君が描ける最も大きな四角形の面積を答えなさい。
なお、四角形が描けないときの面積は0とせよ。

$D\leqq10^4$

yukicoder080

解法

方程式を書くと$O(1)$
面倒くさいので全探索をして$O(N)$

計算量:$O(N)$

ソース

    #include <bits/stdc++.h>
    using namespace std;
    
    #define FOR(i, s, e) for (int(i) = (s); (i) < (e); (i)++)
    
    int main() {
        cin.tie(0);
        ios_base::sync_with_stdio(false);
    
        int N; cin >> N;
        int ans = 0;
        FOR(i, 1, N / 2) {
            int j = (N - 2 * i) / 2;
            int ret = i*j;
            ans = max(ans, ret);
        }
        cout << ans << "\n";
    
        return 0;
    }
Share Comments
̃Gg[͂ĂȃubN}[Nɒlj
comments powered by Disqus