題目背景
2023年普及組第一題
題目描述
有乙個n*m方格的棋盤,求其方格包含多少正方形、長方形
輸入格式
n,m因為原來資料太弱,現規定m小於等於5000,n小於等於5000(原來是100,100)
輸出格式
方格包含多少正方形、長方形
輸入輸出樣例
輸入 #1
2 3輸出 #1
8 10
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
int n,m,t;
long
long ans =
0,ant =0;
intmain()
}
cout << ans <<
" "<< ant-ans << endl;
return0;
}
一、算正方形的個數1.如果我們固定了正方形的右下角(i,j),你能不能算出此時可能的正方形的個數?
2.顯然,此時答案為min(i,j).
3.所以可以列舉右下角,計算此時答案,求和即可。
二、算長方形個數
1.其實算長方形並不常見,但算矩形大家應該經常遇到,所以如果你會算矩形,再聯絡第乙個問題,那答案就轉化為 矩形個數-正方形個數.
2.像求解正方形個數一樣,固定矩形右下角(i,j),顯然此時矩形個數為i*j.
3.同理,求和即可.
P2241 統計方形(資料加強版)
目錄參考文章 題目傳送門 1997年普及組第一題 有乙個 n times mn m 方格的棋盤,求其方格包含多少正方形 長方形 不包含正方形 一行,兩個正整數 n,mn,m n leq 5000,m leq 5000n 5000,m 5000 一行,兩個正整數,分別表示方格包含多少正方形 長方形 不...
洛谷 P2241 統計方形(資料加強版)
洛谷 p2241 統計方形 資料加強版 include using namespace std intmain chang ju zheng cout 對於這道題,我們先考慮第乙個問題 一 算正方形的個數 1.如果我們固定了正方形的右上角 i,j 你能不能算出此時可能的正方形的個數?2.顯然,此時答...
洛谷 p2241 統計方形(思維)
求乙個n m的棋盤格上有多少個不同的正方形,多少個不同的長方形。用兩個for來模擬矩形的兩個邊,看這個矩形能在該棋盤格上擺出多少個不同的位置即可,如果矩形邊長相同則結果加到正方形上,反之則加到長方形上。include using namespace std define int long long ...