牛客OI周赛2-提高组
A.游戏
链接:https://www.nowcoder.com/acm/contest/210/A
来源:牛客网
空间限制:C/C++ 131072K,其他语言262144K
64bit IO Format: %lld
题目描述
1.操作的范围为从整个网格的左上角到选定方格的矩形区域
输入描述:
题目有多组数据
第一行一个整数t,表示数据组数
对于每组数据,第一行两个整数n,m,接下来n行每行m个字符
输出描述:
输出共t行,每行一个字符串表示答案
输入例子:
2
3 3
RGG
BBG
RRR
3 3
GRB
RGR
RBG
输出例子:
dreagonm
fengxunling
-->
备注:
对于
的数据,
对于另
的数据,
对于
的数据
/*
题目描述写的很清楚,三个人的操作都是为了
BLUESKY007能赢,所以游戏一定会结束,那么当横纵坐标最大的非 B 颜色方格变为 B 颜
色时,可操作的方格范围显然是趋向收敛的,又因为操作规则的要求,左上角的方格在每
次操作中都会按规则进行变换,当可操作范围收敛到左上角且左上角变为 B 颜色时,游
戏结束,所以无论中间的操作是怎样进行的,最终左上角的方格一定会变为 B 颜色,而且
进行操作的人数和操作变换长度相同,所以只需要判断左上角方格的颜色即可
*/
#include<bits/stdc++.h> using namespace std;
char maze[+][+]; int main()
{
int t;
cin>>t;
int n,m;
while(t--)
{
scanf("%d%d",&n,&m);
for(int i=; i<n; i++)
{
cin>>maze[i];
}
if(maze[][]=='R') puts("dreagonm");
else if(maze[][]=='G') puts("fengxunling");
else puts("BLUESKY007");
}
}
B.水果蛋糕
链接:https://www.nowcoder.com/acm/contest/210/B
空间限制:C/C++ 131072K,其他语言262144K
64bit IO Format: %lld
题目描述
蛋糕是方形的,因为水果颗粒放整齐才好看,所以水果颗粒必须按行按列地摆放(也就是如果建立平面直角坐标系,它们的坐标必须都是整数)。
她的朋友们想要蛋糕店多放点水果,但是由于摆放得太密集也不好看qwq,所以蛋糕店拒绝在和任意的水果颗粒相距
她的朋友们想知道蛋糕上最多能摆放多少水果颗粒,但是由于她们没有BLUESKY007聪(rui)慧(zhi),所以她们找到了你来帮忙
输入描述:
一行两个正整数n,m
输出描述:
一行一个整数表示答案
输入例子:
1 4
输出例子:
4
-->
备注:
对于20%的数据,min(n,m)≤3,n,m≤10
3
对于100%的数据,n,m≤ 10
9
/*
规律题
*/
#include<bits/stdc++.h> using namespace std;
int n,m; int main()
{
scanf("%d%d",&n,&m);
if(n<||m<){printf("%lld\n",1ll*n*m);return ;}
if(n>m)swap(n,m);
if(n==&&m==){puts("");return ;}
if(n==&&m==){puts("");return ;}
if(n==)
{
int t=m/,r=m%;
long long ans=2ll*m;
if(r==||r==)ans+=*r;
else if(r==||r==)ans+=;
else if(r==)ans=12ll*(t+);
printf("%lld\n",ans);
return ;
}
if(n==)
{
int t=m/,r=min(,m%);
long long ans=m+6ll*t+2ll*r;
printf("%lld\n",ans);
return ;
}
cout<<(1ll*n*m+)/<<endl;
return ;
}



C.好朋友
链接:https://www.nowcoder.com/acm/contest/210/C
来源:牛客网
空间限制:C/C++ 131072K,其他语言262144K
64bit IO Format: %lld
题目描述
她会向你询问t次,由于询问次数可能很多,所以你只需要告诉她t次询问答案的异或和即可.
输入描述:
第一行一个整数t,表示询问个数
接下来t行,每行两个整数l
i
,r
i
输出描述:
一行一个整数表示答案
输入例子:
3
1 1000
233 666
999 999
输出例子:
0
-->

#include<bits/stdc++.h> #define N 500000 using namespace std;
int n,m,l,r,ans;
int sum[N]; int main()
{
int T;cin>>T;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=;
sum[]=; for(int i=;i<=;i++) sum[i]+=sum[i-];
while(T--)
{
cin>>l>>r;
if(l<= && r<=) ans^=;
else if(l<= && r<=)
ans^=sum[r]-sum[l-];
}
printf("%d\n",ans);
return ;
}
40打了个表...
/*
因为"好朋友"的定义为含有"007",所以有很多情况都会被视为含有"007",例如
"10707","17007"等,此时我们发现对于含有"007"的情况的讨论比较复杂,所以我们不
妨讨论不含"007"的情况,也即对于任意的含有 7 的数,其中每一个7前都至多有2个0 ,
由此可以设f[i][j]表示在前 i 位有 j 个 0 的数的个数,在数位DP过程中存当前位置和已有
的 0 的个数,显然在 0 的个数>=2时,后面的数位上都不可能再有7.在求出不含"007"的
数之后,用总数减掉即可。
*/
#include<bits/stdc++.h> #define ll long long using namespace std; ll l,r,ans,f[][],d[];
int t,m,i,j,k,x,a[]; ll work(ll n)
{
if(n<)return ;
for(m=;n;n/=)a[m++]=n%;
reverse(a,a+m);
memset(f,,sizeof(f));
f[][]=a[]-;
x=;
for(i=;i<m;i++)
{
f[i+][]=f[i][]*;
f[i+][]=f[i][]+f[i][]*;
f[i+][]=f[i][]+f[i][]*;
f[i+][]=f[i][]+f[i][]*;
f[i+][x]+=a[i]-;
f[i+][x+(x<&&a[i]||x==&&a[i]>)]++;
if(x<&&!a[i]||x==&&a[i]==)x++;
}
return d[m-]+f[m][];
} int main()
{
for(i=,l=;i<=;i++,l*=)d[i]=work(l-);
scanf("%d",&t);
while(t--)
{
scanf("%lld%lld",&l,&r);
ans^=work(r+)-work(l);
}
cout<<ans<<endl;
return ;
}
牛客OI周赛2-提高组的更多相关文章
- 牛客OI周赛9-提高组题目记录
牛客OI周赛9-提高组题目记录 昨天晚上做了这一套比赛,觉得题目质量挺高,而且有一些非常有趣而且非常清奇的脑回路在里边,于是记录在此. T1: 扫雷 题目链接 设 \(f_i\) 表示扫到第 \(i\ ...
- 牛客OI周赛8-提高组A-用水填坑
牛客OI周赛8-提高组A-用水填坑 题目 链接: https://ac.nowcoder.com/acm/contest/403/A 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制: ...
- 牛客OI周赛11-普及组 B Game with numbers (数学,预处理真因子)
链接:https://ac.nowcoder.com/acm/contest/942/B 来源:牛客网 Game with numbers 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C+ ...
- 牛客OI周赛7-提高组 A 小睿睿的等式
链接:https://ac.nowcoder.com/acm/contest/371/A来源:牛客网 小睿睿在游戏开始时有n根火柴棒,他想知道能摆成形如“A+B=n”的等式且使用的火柴棒数也恰好等于n ...
- 牛客OI周赛7-提高组 B小睿睿的询问(ST打表)
链接:https://ac.nowcoder.com/acm/contest/371/B来源:牛客网 小睿睿的n个妹纸排成一排,每个妹纸有一个颜值val[i].有m个询问,对于每一个询问,小睿睿想知道 ...
- 牛客OI周赛7-普及组 解题报告
出题人好评. 评测机差评. A 救救喵咪 二位偏序.如果数据范围大的话直接树状数组,不过才1000就\(O(n^2)\)暴力就ok了. #include <bits/stdc++.h> s ...
- 牛客OI周赛10-普及组-A眼花缭乱的街市-(加速+二分)
https://ac.nowcoder.com/acm/contest/901/A 很简单的一道题,全场只有20+AC,卡时间.新学了cin加速语法和数组二分查找的函数调用. 知道有个读写挂,可以加速 ...
- 牛客OI周赛8-普及组
https://ac.nowcoder.com/acm/contest/543#question A. 代码: #include <bits/stdc++.h> using namespa ...
- 牛客OI周赛7-提高组
https://ac.nowcoder.com/acm/contest/371#question A.小睿睿的等式 #include <bits/stdc++.h> using names ...
随机推荐
- JQuery Easy UI 简介
[什么是JQuery Easy UI?] jQuery EasyUI 是一组基于 jQuery 的 UI 插件集合,而 jQuery EasyUI 的目标就是帮助Web 开发者更轻松的打造出功能丰富并 ...
- Web框架django基础篇
基本配置及学习 路由(Urls).视图(Views).模板(Template).Model(ORM). 简介 Django 是一个由 Python 写成的开放源代码的 Web 应用框架.它最初是被开 ...
- MVC系统学习6—Filter
Mvc的过滤器是特性类,可以使我们在执行Action之前,执行Action之后,执行Action发生异常时,编写相关的处理代码实现某些逻辑.下面是四个基本的Filter接口. 上面这四个基本的Filt ...
- 7-19 求链式线性表的倒数第K项(20 分)(单链表定义与尾插法)
给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字. 输入格式: 输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理). 输出格式 ...
- [K/3Cloud] 使用操作还是服务
现在菜单点击事件既可以挂操作又可以挂服务,那到底是应该挂操作还是服务呢? 有个需求是要求一个动作可以在两个时点被触发 1.单据由下推或选单生成的时候: 2.点击单据界面功能菜单: 这样是不是需要做一个 ...
- 【HDOJ6148】Valley Numer(数位DP)
题意: 1≤T≤200 ● 1≤length(N)≤100 思路: 设f[i,j,k,l]为第i位为j,前i位是否贴上限(0/1),递减或递增(0/1)方案数 g[i,j,k]为不到n位,第i位为j, ...
- tyvj1031 热浪
背景 USACO OCT09 9TH 描述 德克萨斯纯朴的民眾们这个夏天正在遭受巨大的热浪!!!他们的德克萨斯长角牛吃起来不错,可是他们并不是很擅长生產富含奶油的乳製品.Farmer John此时以先 ...
- memcache适用和不适用场景[转载]
适用memcached的业务场景:1)如果网站包含了访问量很大的动态网页,因而数据库的负载将会很高.由于大部分数据库请求都是读操作,那么memcached可以显著地减小数据库负载.2)如果数据库服务器 ...
- 硬盘安装Win 7系统Windows 7 系统硬盘安装教程(图解)
目前,win 7的市场占有率即将超过XP成为了第一大系统,很多人也用上了win 7,你是不是也还是徘徊呢?是否因为XP用习惯了,或者是不会安装 win7呢?win7安装其实不麻烦,不管是什么系统,安装 ...
- C#高级编程四十八天----列表
C#中的List C#中deList怎么样?List<T>类是ArrayList类的泛型等效类,该类使用大小可按需动态增长的数组实现List<T>泛型接口. 泛型的优点:它为使 ...