水饺基情

2024-05-30 19:48
文章标签 水饺 基情

本文主要是介绍水饺基情,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Problem Description
在看完植物大战僵尸后,雄哥强烈要求zzy在203留宿,地点就在雄哥的睡袋上。是不是很基情??长夜漫漫无心睡眠,雄哥拿出了积攒已久的一盒水饺,(因为饿了= =)。半夜三更,四下无人,zzy和雄哥决定把水饺吃掉,但是!他们玩了一个十分基情的游戏。雄哥拿来了一张T*T的棋盘,决定把水饺铺到棋盘格子上。由于有两种味道的水饺,韭菜味的和白菜味的。韭菜味的用A表示,白菜味的用B表示。 将两种水饺以梅花分布形式铺满棋盘,例如:5*5的棋盘铺好后如下:
韭菜味 白菜味 韭菜味 白菜味 韭菜味
白菜味 韭菜味 白菜味 韭菜味 白菜味 
韭菜味 白菜味 韭菜味 白菜味 韭菜味 
白菜味 韭菜味 白菜味 韭菜味 白菜味
韭菜味 白菜味 韭菜味 白菜味 韭菜味
好了他们开始玩游戏了。约定两种操作
R a b c d:询问(a,b)->(c,d)范围内有多少个韭菜味和白菜味的水饺。
X a b: 代表将(a,b)点的水饺更新为X,X只有两种取值A或B。
好了,现在他们想知道多次更新后的棋盘在(a,b)->(c,d)的范围内有多少韭菜味的水饺和白菜味的水饺。
Input
输入包含多次操作,其中第一行是一个整数 T(1<=T<=1,000, 000),表示操作的次数,也是棋盘的宽度。
接下来是T行,分别对应Ti操作,格式有2种:
1.  A或B开头,后跟2个整数x和y(1<=x,y<=1024),表示对(x,y)处的水饺进行更新
2.  R 后面跟4个整数x1,y1,x2和y2(1<=x1<=x2<=1024, 1<=y1<=y2<=1024), 询问(x1,y1)->( x2,y2)范围内有韭菜味和白菜味的水饺的个数。
Output
针对每个询问操作,输出一行,有两个整数 回答(x1,y1)->( x2,y2)范围内有多少韭菜味和白菜味的水饺。
Sample Input
8
R 1 1 5 5
A 5 5
R 1 1 5 5
R 1 1 4 5
A 1 4
A 2 4
A 3 4
R 1 1 5 5
Sample Output
13 12 
13 12
10 10
15 10
//题解:用后缀数组模拟
//标程:
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int n, x1,x2,y1,y2;
char ch;
int a[1030][1030], b[1030][1030];int main()
{
//    freopen("a.txt","r",stdin);int i, j, t;while(cin >> t){memset(b,0,sizeof(b));n = t;if(n > 1024) n = 1024;for(i = 1; i <= n; i += 2){a[1][i] = 1;a[1][i+1] = 0;a[i][1] = 1;a[i+1][1] = 0;}for(i = 2; i <= n; ++ i)for(j = 2; j <= n; ++ j)a[i][j] = a[i][j-1]^1;for(i = 1; i <= n; ++ i)for(j = 1; j <= n; ++ j)b[i][j] = b[i][j-1] + a[i][j];for(i = 1; i <= t; ++ i){cin >> ch;if(ch == 'R'){scanf("%d%d%d%d",&x1,&y1,&x2,&y2);int suma = 0, sumb = 0;for(j = x1; j <= x2; ++ j){int tmpa = b[j][y2]-b[j][y1-1];int tmpb = y2-y1+1-tmpa;suma += tmpa;sumb += tmpb;}cout << suma << ' ' << sumb << endl;}else{scanf("%d%d",&x1,&y1);if(ch == 'A'){if(a[x1][y1] == 1) continue;else{a[x1][y1] = 1;for(j = y1; j <= n; ++ j)++ b[x1][j];}}else{if(a[x1][y1] == 0) continue;else{a[x1][y1] = 0;for(j = y1; j <= n; ++ j)-- b[x1][j];}}}}}return 0;
}

这篇关于水饺基情的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016781

相关文章

贝塞尔曲线与CSS3动画、SVG和canvas的基情

一、甚忙,短言之 最近谷歌那谁谁因为自己的相好被老大抢了,就去小米了!狗血的三角关系要比烂掉的TVB神剧好看多了。 但这只是小菜,贝塞尔曲线才是很角色,因为有外国血统,因此,和CSS3动画、SVG以及canvas都有基情,基情绽放如盛夏的菊花。 然而,有基情好啊,搞在一起就可以一锅端了,不是有这么一首歌嘛~ 互撸娃,互撸娃,一根藤上七朵花; 连根一拔,全死啦!啦~啦啦啦……

南北方人一桌过春节,吃水饺还是汤圆,开发一款水饺汤圆对战游戏,让实力说话

前言 款过年了,听说南方过年吃汤圆,北方过年吃饺子,如果南北方人同桌吃饭会怎么样,肯定会有一番争论,这种事情肯定争不出结果 ,开发一款对战游戏,谁有实力听谁的。 效果演示 需求分析 对战双方为:水饺,汤圆。使用装水饺和汤圆的碗作为武器使用水饺和汤圆作为子弹要有对战的热闹氛围子弹发射过多时要有堆积效果汤圆和水饺不可以无限堆积,需要有消耗 玩法说明: 在手机屏幕两端分别放置红色碗形状,