時間限制:c/c++ 4秒,其他語言8秒
空間限制:c/c++ 262144k,其他語言524288k
64bit io format: %lld
the first line of input contains 3 integers n,m,t(n*m<=1000000,t<=1000000)for the next n lines, each line contains m integers in range[1,n*m] denoting the type of plant in each grid.
for the next t lines, the i-th line contains 5 integers x1,y1,x2,y2,k(1<=x1<=x2<=n,1<=y1<=y2<=m,1<=k<=n*m)
print an integer, denoting the number of plants which would die.
示例1複製
2 2 2複製1 22 3
1 1 2 2 2
2 1 2 1 1
3隨機生成1~1e6對應的權值。
更新的時候,對整個矩陣加對應位置的權值,並記錄這個店被更新的次數。
之後用二維字首和來得到(i,j)上的總權值sum(i,j)和被更新的次數cnt(i,j)
如果sum(i,j)!=cnt(i,j)*rand(a(i,j)) 說明存在乙個數更新的時候跟他本身不等,讓答案+1
#include#define mp make_pair
#define fir first
#define se second
#define ll long long
#define pb push_back
using namespace std;
const int maxn=1e6+10;
const ll mod=1e9+7;
const int maxm=1e6+10;
const double eps=1e-7;
const int inf=0x3f3f3f3f;
vectorv[maxn],cnt[maxn],sum[maxn];
int n,m,t;
ll w[maxn];
int main()
}for (int i=1;i<=n;i++)
}while (t--)
for (int i=1;i<=n;i++)
}int ans=0;
for (int i=1;i<=n;i++)}}
printf("%d\n",ans);
return 0;
}
牛客多校第二場 J farm
輸入描述 the first line of input contains 3 integers n,m,t n m 1000000,t 1000000 for the next n lines,each line contains m integers in range 1,n m denotin...
2019牛客多校第二場
蒙特卡洛 猜答案 注意答案要累乘 最大的可以用rmq rmqrm q做然後挖掉四個角分別再做一次即可 掛一下大佬的鏈結 最重要的是學會了字首和查詢相差為1 11的時候的奇技淫巧 include include define fo i,a,b for i a i b i define fd i,a,b...
2019牛客多校第二場
乙個0到n 1的環,初始在0,每次隨機前進或後退一格,當所有點都訪問過就結束,問結束時站在k的概率是多少。注意輸出的是字首積 一開始站在0,最後顯然不可能在0,剩下n 1格,隨機數打表發現概率相同,都為 frac include using namespace std typedef long lo...