AT_xmascon21_b Bad Mood
題意
給定你一個 \(n\times m\) 的矩形。
以一條對角線為基礎上,製作一個無向圖,該圖的頂點對應于格子的共有 \((m+1) \times (n+1)\) 個頂點,畫上的對角線對應於圖的邊。這種方式能形成的連通分量的數量為得分。
求最小得分和最大得分。
思路
最小得分是好算的,就是 \((n+1)\times (m+1)−n\times m\),也就是 \(n+m+1\)。
最大得分就是最小得分加上 \(\frac{n\times m-(n-2)\times(m-2)}{4}\),即 \(\frac{n\times m+n+m}{2}+2\)。
注意
\(n\) 和 \(m\) 要用 long long 型別
程式碼
#include <bits/stdc++.h>
using namespace std;
long long a, b;
int main() {
cin>>a>>b;
cout<<a+b+1<<' '<<(a+b+a*b)/2+2<<'\n';
return 0;
}