SCU4440 Rectangle

 

题意 给定一个n*m的矩形 再给出一个周长 求该矩形内所有周长小于给定周长的矩形个数

思维题啦 先可以写成二重循环 找出规律(二重循环时间复杂度On^2了 肯定会炸的 然后再变成一重循环就行了 当然 也可以直接找规律

AC代码:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 typedef unsigned long long ull;
 5 int main(){
 6     ll n, m, k;
 7     ll ans;
 8     while (cin>>n>>m>>k){
 9         ans = 0;
10         k /= 2;
11         for (int i = 1; i <= n; i++){
12             int j = k - i;
13             if (j <= 0) break;
14             if (j > m) j = m;
15             ans += (n - i + 1) * (m + m - j + 1) * j / 2;
16         }
17         cout<<ans<<endl;
18     }
19     return 0;
20 }

 

posted @ 2019-05-22 09:56  Misuchii  阅读(142)  评论(0编辑  收藏  举报