傳送門:
【題解】
題目要求$\sum_^n\sum_^m ((i,j) * 2 + 1)$
考慮容斥,$t_i$表示有公約數$i$的方案數,顯然是$\lfloor n/i \rfloor \lfloor m/i \rfloor$。
$f_i$表示有最大公約數$i$的方案數,那麼有$f_i = t_i - \sum_^ f_$
倒過來做顯然就行了,複雜度是$o(nlogn)$。
# include # includeview code# include
# include
//# include
using
namespace
std;
typedef
long
long
ll;typedef
long
double
ld;typedef unsigned
long
long
ull;
const
int m = 5e5 + 10
;const
int mod = 1e9+7
;int
n, m;
ll f[m], ans;
intmain()
cout
<
return0;
}
bzoj 2005 Noi2010 能量採集
description 棟棟有一塊長方形的地,他在地上種了一種能量植物,這種植物可以採集太陽光的能量。在這些植物採集能量後,棟棟再使用乙個能量匯集機器把這些植物採集到的能量匯集到一起。棟棟的植物種得非常整齊,一共有n列,每列有m棵,植物的橫豎間距都一樣,因此對於每一棵植物,棟棟可以用乙個座標 x,y...
BZOJ2005 Noi2010 能量採集
description 棟棟有一塊長方形的地,他在地上種了一種能量植物,這種植物可以採集太陽光的能量。在這些植物採集能量後,棟棟再使用乙個能量匯集機器把這些植物採集到的能量匯集到一起。棟棟的植物種得非常整齊,一共有n列,每列有m棵,植物的橫豎間距都一樣,因此對於每一棵植物,棟棟可以用乙個座標 x,y...
bzoj2005 Noi2010 能量採集
description 棟棟有一塊長方形的地,他在地上種了一種能量植物,這種植物可以採集太陽光的能量。在這些植物採集能量後,棟棟再使用乙個能量匯集機器把這些植物採集到的能量匯集到一起。棟棟的植物種得非常整齊,一共有n列,每列 有m棵,植物的橫豎間距都一樣,因此對於每一棵植物,棟棟可以用乙個座標 x,...