二維偏序,利用二維字首和的思想,乙個矩陣(x1,y1,x2,y2)可以由(0,0,x2,y2)+(0,0,x1-1,x2-1)-(0,0,x1-1,y2)-(0,0,x2,y1-1)得出,所以按x軸排序,用樹狀陣列記錄y軸的(0,y]的值,然後就ok了。
此題有乙個nc坑點,就是他讓你計算的乙個點的權值不是這個值在螺旋矩陣中的值,而是螺旋矩陣的值的每位數的和,列如5*5的螺旋矩陣在(3,3)為25,但是其實這個點的權值是7(2+5),而且樣例因為都是個位數所以按權值和算完全符合!
螺旋矩陣給出座標求出相應值的函式是copy的網上的模板。
#include
#include
#include
#include
using
namespace std;
const
int max_n=
1e5+
1000
;int n;
struct skta[max_n]
;struct ktb[
4*max_n]
;struct ssgque[max_n]
;bool
cmp(skt a,skt b)
bool
cmpp
(kt a,kt b)
int sum[
1010000];
void
add(
int p,
long
long x)
}int
ask(
int p)
return ans;
}long
long
asking
(long
long n,
long
long a,
long
long b)
else
ans=4*
(n-q)
*q-a-b+
2*q+1;
return ans;
}int
work
(long
long x)
return ans;
}int
main
(void
)sort
(a,a+m,cmp)
;for
(i=0
;i)sort
(b,b+
4*q,cmpp)
;int cnta=
0,cntb=0;
a[m]
.x=1e9
;b[4
*q].x=
1e9;
while
(cnta4*q)
else
}//cout<<"asdfa\n";
for(i=
0;i<
4*q;i++
)for
(i=0
;ireturn0;
}
2019 ICPC 南京網路賽D Robots
link 思路link 題意 給出乙個n個點的dag,起點保證為1,終點保證為n,在每乙個點,每一天有等概率走向其相鄰的點或是停在原點。在第i天的損耗值為i,求走到終點的期望損耗值。思路定義兩個陣列d i c i d i c i d i c i 分別代表第i個位置到終點的期望天數以及期望損耗值。可以...
2019icpc南京網路賽 A 主席樹
給乙個 n times n 的螺旋矩陣,給出其中的 m 個點的值分別為各個點上數字的數字之和,給出 q 個詢問,每次詢問從 x1,y1 到 x2,y2 的子矩陣的和。用官方題解的方法 o 1 推出點 x,y 上的值,將這 m 個點按 x 排序後依次按 y 建主席樹,查詢時找到對應的 x1 和 x2 ...
ICPC 南京賽區網路賽 A
題目大意就是,給你乙個數n 然後給你乙個公式求s,讓你輸出s n 這個題目不用想,直接用用題目中的公式暴力寫肯定超時 可以先手算簡化一下公式 n 1 n 1 n n 1 n 1 n!n 1 所以可得 s 1 1!n 1 n 1 2!1!3!2!n!n 1 n 1 所以s n n 1 n n 是n的倍...