日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【BZOJ4972】小Q的方格纸 前缀和

發布時間:2023/12/18 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【BZOJ4972】小Q的方格纸 前缀和 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【BZOJ4972】小Q的方格紙

Description

方格紙與草稿紙一樣,都是算法競賽中不可或缺的重要工具。身經百戰的小Q自然也會隨身帶著方格紙。小Q的方格紙有n行m列,一共n*m個方格,從上到下依次標記為第1,2,...,n行,從左到右依次標記為第1,2,...,m列,方便起見,小Q稱第i行第j列的方格為(i,j)。小Q在方格紙中填滿了數字,每個格子中都恰好有一個整數a_{i,j}。小Q不喜歡手算,因此每當他不想計算時,他就會讓你幫忙計算。小Q一共會給出q個詢問,每次給定一個方格(x,y)和一個整數k(1<=k<=min(x,y)),你需要回答由(x,y),(x-k+1,y),(x,y-k+1)三個格子構成的三角形邊上以及內部的所有格子的a的和。

Input

第一行包含6個正整數n,m,q,A,B,C(1<=n,m<=3000,1<=q<=3000000,1<=A,B,C<=1000000) 其中n,m表示方格紙的尺寸,q表示詢問個數。 為了防止輸入數據過大,a和詢問將由以下代碼生成: unsigned int A,B,C; inline unsigned int rng61(){ A ^= A << 16; A ^= A >> 5; A ^= A << 1; unsigned int t = A; A = B; B = C; C ^= t ^ A; return C; } int main(){ scanf("%d%d%d%u%u%u", &n, &m, &q, &A, &B, &C); for(i = 1; i <= n; i++) for(j = 1; j <= m; j++) a[i][j] = rng61(); for(i = 1; i <= q; i++){ x = rng61() % n + 1; y = rng61() % m + 1; k = rng61() % min(x, y) + 1; } }

Output

為了防止輸出數據過大,設f_i表示第i個詢問的答案,則你需要輸出一行一個整數,即:

(sum_{i=1}^q 233^{q-i}*f_i) mod 2^{32}

Sample Input

3 4 5 2 3 7

Sample Output

3350931807

題解:維護一個斜著的右上方前綴和,一個平著的右上方前綴和即可。

#include <cstdio> #include <cstring> #include <iostream> using namespace std; typedef unsigned int ui; int n,m,q; ui A,B,C,ans,sum; ui a[3010][3010],s[3010][3010],h[3010][3010]; inline unsigned int rng61(){A ^= A << 16;A ^= A >> 5;A ^= A << 1;unsigned int t = A;A = B;B = C;C ^= t ^ A;return C; } int main() {int i,j,k,x,y;scanf("%d%d%d%u%u%u", &n, &m, &q, &A, &B, &C);for(i = 1; i <= n; i++)for(j = 1; j <= m; j++)a[i][j] = rng61();for(i=1;i<=n;i++){for(j=m;j>=1;j--){s[i][j]=s[i][j+1]+s[i-1][j+1]-s[i-1][j+2]+a[i][j];h[i][j]=h[i][j+1]+h[i-1][j]-h[i-1][j+1]+a[i][j];}}for(i = 1; i <= q; i++){x = rng61() % n + 1;y = rng61() % m + 1;k = rng61() % min(x, y) + 1;sum=s[x][y-k+1]-s[x-k][y+1]-h[x][y+1]+h[x-k][y+1];ans=ans*233+sum;}printf("%u",ans);return 0;}

轉載于:https://www.cnblogs.com/CQzhangyu/p/7411408.html

總結

以上是生活随笔為你收集整理的【BZOJ4972】小Q的方格纸 前缀和的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久大综合 | 国产精选毛片 | 射射av | 久久久久久久9 | 美女在线网站 | 成年网站免费在线观看 | 看a网站| www成人网 | 亚洲AV无码成人精品国产一区 | 尤物毛片| 欧美大片视频在线观看 | 怡红院久久 | 成人va视频 | 日韩乱码一区二区三区 | 东方av在线免费观看 | 国产一区二区在线电影 | 精品人妻一区二区三区含羞草 | 在线看片 | 波多在线播放 | a级在线观看视频 | 欧美肉大捧一进一出免费视频 | 精品国产自| 中文字幕免费高清在线观看 | 欧美成人免费一级 | 在线看片亚洲 | 黄瓜视频色版 | 亚洲欧美激情在线观看 | 特级大胆西西4444人体 | 午夜爱| 日本啊啊视频 | 久久综合色视频 | 激情视频久久 | 日本精品入口免费视频 | 久久视频一区 | 看黄色一级视频 | 青青草原亚洲 | 长篇h版少妇沉沦交换 | 亚洲啪 | 永久免费看黄 | 91看片看淫黄大片 | 天天做天天爱天天操 | 午夜爱爱毛片xxxx视频免费看 | 久久精品无码一区二区三区 | 玉米地疯狂的吸允她的奶视频 | 国产美女视频网站 | 二区免费视频 | 麻豆网页| 中文字幕在线日亚洲9 | 亚洲综合欧美日韩 | 草莓视频18免费观看 | 亚洲欧洲色| 成年人午夜视频 | 亚洲在线观看av | 中文日本在线 | 福利二区视频 | h成人在线 | 精品国产中文字幕 | 少妇姐姐 | www.com捏胸挤出奶 | 国产suv精品一区二区6 | 无码人妻精品一区二区三应用大全 | 色激情五月 | 加勒比久久综合 | 国产香蕉精品视频 | 中文字幕无码人妻少妇免费 | 福利一区二区在线 | 国产精品一线二线三线 | 亚洲成人视屏 | 美女的奶胸大爽爽大片 | 蜜臀aⅴ国产精品久久久国产老师 | av资源免费看 | 成人在线观看小视频 | 99精品视频在线免费观看 | 日韩欧美天堂 | 日韩一级淫片 | 91福利视频在线观看 | 亚洲国产永久 | 伊人成人在线视频 | 久久久久国产一区 | 99热黄色 | 国产高清区 | 久久99精品久久久久久水蜜桃 | 男女啪啪毛片 | 大乳女喂男人吃奶视频 | 国产私密视频 | 一区二区三区精 | 污污内射在线观看一区二区少妇 | 在线免费日韩av | 中文字幕一区二区三区电影 | 自拍毛片| 银娇在线观看 | 你懂的欧美| 毛片毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 视频一区二区三区在线观看 | 国产色黄| 啪啪免费 | 69成人网 | 图片区偷拍区小说区 | 美女福利视频在线观看 |