題解:AT_xmascon21_b Bad Mood

All_Unluck_Beginning發表於2024-04-06

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;
}

相關文章