当前位置: 首页 > news >正文

公文写作 课程中心网站建设油漆涂料网站建设

公文写作 课程中心网站建设,油漆涂料网站建设,产品开发,推广网络推广平台目录 D - Tile Pattern 题目大意: 思路: 代码: D - Tile Pattern D - Tile Pattern (atcoder.jp) 题目大意: 给你一个n和q,n为局部棋盘大小(n*n) 并且给出局部棋盘中黑白子位置的放置情况,q为查询次数…

目录

 D - Tile Pattern

题目大意:

思路:

代码:


 

 D - Tile Pattern

D - Tile Pattern (atcoder.jp)

题目大意:

 给你一个n和q,n为局部棋盘大小(n*n) 并且给出局部棋盘中黑白子位置的放置情况,q为查询次数,然后使用局部棋盘填充整个棋盘,全局棋盘大小为(10^9 * 10^9),然后一次查询会给出a b c d,(a,b)表示选中棋盘的左上角,(c,d)表示选中棋盘的右上角,然后问在这个选中区域中有多少个黑色棋子。

思路:

editorial1

我们其实可以通过预处理这个局部棋盘矩阵,得到任意以(0,0)为左上角的矩阵的含有黑色棋子的个数,即dp[i][j]表示  (0,0) -> (i,j)的矩阵含有黑色棋子的个数。

 如果把这个选中矩阵填充成 (0,0) -> (c,d).                                                                                       那么答案就为 dp[c][d] - dp[c][b-1] - dp[a-1][d] + dp[a-1][b-1].

但是如果a b c d 都大于n,那么其实我们可以沿着这个思路,将d区看作是完整的m*n个局部棋盘,c区看作是列不全的m个局部棋盘,b区看作是行不全的n个局部棋盘,a区看作是列不全和行不全的棋盘,然后d区可以直接通过 m*m*dp[n][n]求得,c区和b区都分别等于m个列不全和行不全的局部棋盘和n个列不全和行不全的局部棋盘,然后这些局部棋盘又可以通过 dp[c][d] - dp[c][b-1] - dp[a-1][d] + dp[a-1][b-1]得到。

代码:

import java.io.*;
import java.math.BigInteger;
import java.util.StringTokenizer;/*** @ProjectName: study3* @FileName: Ex37* @author:HWJ* @Data: 2023/12/2 20:50*/
public class Ex37 {static long[][] dp;static int n;public static void main(String[] args) {n = input.nextInt();int q = input.nextInt();long[][] map = new long[n][n];dp = new long[n + 1][n + 1];for (int i = 0; i < n; i++) {String str = input.next();char[] s = str.toCharArray();for (int j = 0; j < n; j++) {if (s[j] == 'B') {map[i][j] = 1;}}}for (int i = 1; i <= n; i++) {for (int j = 1; j <= n; j++) {dp[i][j] = dp[i - 1][j] + dp[i][j - 1] - dp[i - 1][j - 1] + map[i - 1][j - 1];}}for (int i = 0; i < q; i++) {int a = input.nextInt();int b = input.nextInt();int c = input.nextInt();int d = input.nextInt();long ans = f(a, b, c+1, d+1);out.println(ans);}out.flush();out.close();}public static long f(int a, int b, int c, int d){return g(c,d) - g(c,b) - g(a,d) + g(a,b);}public static long g(int a, int b){if (a <= n && b <= n) return dp[a][b];int Hq = a / n, Hr = a % n;int Wq = b / n, Wr = b % n;long ret = 0;ret += g(n, n) * Hq * Wq;ret += g(Hr, n) * Wq;ret += g(n, Wr) * Hq;ret += g(Hr, Wr);return ret;}static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));static Input input = new Input(System.in);static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static class Input {public BufferedReader reader;public StringTokenizer tokenizer;public Input(InputStream stream) {reader = new BufferedReader(new InputStreamReader(stream), 32768);tokenizer = null;}public String next() {while (tokenizer == null || !tokenizer.hasMoreTokens()) {try {tokenizer = new StringTokenizer(reader.readLine());} catch (IOException e) {throw new RuntimeException(e);}}return tokenizer.nextToken();}public String nextLine() {String str = null;try {str = reader.readLine();} catch (IOException e) {// TODO 自动生成的 catch 块e.printStackTrace();}return str;}public int nextInt() {return Integer.parseInt(next());}public long nextLong() {return Long.parseLong(next());}public Double nextDouble() {return Double.parseDouble(next());}public BigInteger nextBigInteger() {return new BigInteger(next());}}
}
/*
10 1
BBBWWWBBBW
WWWWWBBBWB
BBBWBBWBBB
BBBWWBWWWW
WWWWBWBWBW
WBBWBWBBBB
WWBBBWWBWB
WBWBWWBBBB
WBWBWBBWWW
WWWBWWBWWB
5 21 21 93*/

 

http://www.yayakq.cn/news/471923/

相关文章:

  • 建设银行etc的网站是哪个好佛山微信网站建设
  • 城乡住房建设网站跨境电商哪个平台比较好做
  • 建设集团网站方案wordpress网站响应速度插件
  • 中国建设银行积分商城网站建设黑彩网站
  • 专业做淘宝网站公司吗微信营销推广公司
  • 淄博网站建设设计公司网站建设怎么报价表
  • 深圳英文网站建设专业公司漯河做网站的
  • 青岛模板建站代理无锡做网站要多少钱
  • 网站建设捌金手指花总二小说主角重生之后做网站
  • 做淘宝客网站需要什么要求昭通网站建设
  • 点评网站开发龙之向导外贸专区
  • 如何免费注册一个网站安徽省建设厅焊工证查询网站
  • 一流的南昌网站建设怎么用ajax做电商网站
  • 免费1级做爰片动漫在线观看网站如何使用网站模板建设网站
  • wordpress模板网站导航公司简历模板免费
  • 企业服务 免费网站建设企业注册公司流程
  • 纯html网站开发工具上海企业宣传片制作
  • 灰色风格的网站网站开发与软件开发
  • 免费用搭建网站如何在本机搭建wordpress
  • 深圳市seo网站设计哪家好wordpress最好的插件
  • 老k频道网站入口恒峰网站建设问题
  • 贵阳建筑公司网站建设天津手机版建站系统价格
  • 石家庄专业网站设计电话公司网站建设意见和建议
  • 网站建设环境常州网站排名推广
  • 给wordpress权限企业网站优化甲薇g71679做同等效果下拉词
  • 建设门户网站费用国家住房和城乡建设局网站
  • 怎么新建网站最常用的网页制作工具
  • 哪里有专业网站建设公司公司装修合同范本
  • 门户网站建设的报价app制作开发报价
  • 做珠宝首饰网站seo页面优化技术