东北育才 NOIP模拟赛第1场
终于400了。这套题很鬼畜。两道贪心。
GRACE sort过后,不能直接统计,本人毫无多想,相同的直接放在一起。结果太多人AC。
SUM sigma+异或和(可使用前缀和处理),本人毫无考虑乱MOD,居然对了50分。(注意处理2^63-1)
#define PN "sum"
#include <cstdio>
#include <cstring>
#include <algorithm>
template<class T>inline void readin(T &res) {
static char ch;T flag = ;
while((ch=getchar())<''||ch>'')if(ch=='-')flag=-;
res=ch-;
while((ch=getchar())>=''&&ch<='')res=(res<<)+(res<<)+ch-;
res*=flag;
}
const long long MOD = 23333333333333333LL;
long long calc[], K[];
void CAL(long long a,long long delta) {
long long k;a+=;
for( long long bit = , pow = ; bit <= ; bit++,pow<<= ) {
k=a/pow/*pow;
calc[bit]=calc[bit]+(k+std::min(a-(k<<),pow))*delta;
}
}
long long add(long long a,long long b) {return a+b>MOD?a+b-MOD:a+b;}
long long cheng(long long a,long long b) {
long long res;
for(res=;a;a>>=,b=add(b,b)) if(a&) res=add(res,b);
return res;
}
int main() {
freopen(PN ".in","r",stdin);
freopen(PN ".out","w",stdout);
long long T, a, b, c;readin(T);
for( long long bit = , pow = ; bit <= ; bit++,pow<<= ) K[bit]=pow%MOD;
while(T--) {
readin(a);readin(b);readin(c);
memset(calc, , sizeof(calc));
if(b==9223372036854775807LL) for( long long bit = ; bit <= ; bit++ ) calc[bit]=4611686018427387904LL;
else CAL(b,);
CAL(a-,-);
long long ans = ;
for( long long bit = , pow = ; bit<=; bit++,pow<<=,c>>= ) {
if(c&) ans=(ans+cheng(calc[bit],K[bit]))%MOD;
else ans=(ans+cheng(b-a+-calc[bit],K[bit]))%MOD;
}
printf("%lld\n",ans);
}
return ;
}
SUM
CACTUS 大部分都是对的,直接倍增,并不苛求用链剖。注意点权下放后的处理。(两行的错误)
FLOW 贪心,无后效性,直接跑就完了!本人以为是DP+数据结构优化,虽然题解也这么写。
竟然最初只有55!不想说了,完毕。
东北育才 NOIP模拟赛第1场的更多相关文章
- NOI.AC NOIP模拟赛 第五场 游记
NOI.AC NOIP模拟赛 第五场 游记 count 题目大意: 长度为\(n+1(n\le10^5)\)的序列\(A\),其中的每个数都是不大于\(n\)的正整数,且\(n\)以内每个正整数至少出 ...
- NOI.AC NOIP模拟赛 第六场 游记
NOI.AC NOIP模拟赛 第六场 游记 queen 题目大意: 在一个\(n\times n(n\le10^5)\)的棋盘上,放有\(m(m\le10^5)\)个皇后,其中每一个皇后都可以向上.下 ...
- NOI.AC NOIP模拟赛 第四场 补记
NOI.AC NOIP模拟赛 第四场 补记 子图 题目大意: 一张\(n(n\le5\times10^5)\)个点,\(m(m\le5\times10^5)\)条边的无向图.删去第\(i\)条边需要\ ...
- NOI.AC NOIP模拟赛 第三场 补记
NOI.AC NOIP模拟赛 第三场 补记 列队 题目大意: 给定一个\(n\times m(n,m\le1000)\)的矩阵,每个格子上有一个数\(w_{i,j}\).保证\(w_{i,j}\)互不 ...
- NOI.AC NOIP模拟赛 第二场 补记
NOI.AC NOIP模拟赛 第二场 补记 palindrome 题目大意: 同[CEOI2017]Palindromic Partitions string 同[TC11326]Impossible ...
- NOI.AC NOIP模拟赛 第一场 补记
NOI.AC NOIP模拟赛 第一场 补记 candy 题目大意: 有两个超市,每个超市有\(n(n\le10^5)\)个糖,每个糖\(W\)元.每颗糖有一个愉悦度,其中,第一家商店中的第\(i\)颗 ...
- contesthunter暑假NOIP模拟赛第一场题解
contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...
- NOIP模拟赛 篮球比赛2
篮球比赛2(basketball2.*) 由于Czhou举行了众多noip模拟赛,也导致放学后篮球比赛次数急剧增加.神牛们身体素质突飞猛进,并且球技不断精进.这引起了体育老师彩哥的注意,为了给校篮球队 ...
- NOIp模拟赛二十八
(这是NOIp模拟赛?应该是NOI模拟赛不小心加了个p) 嗯,假装这是正经的NOIp模拟赛,从今天开始也写写题解吧(这几天被虐的惨惨) 今日情况:8+50+0=58 A题输出样例,B题正解写挂,C题不 ...
随机推荐
- 炸!分享美团面试关于selenium的面试题
个人分类: 软件测试 编辑 在这个互联网技术快速迭代的时代,每个测试员都知道技术对于职业发展的重要性,那些技术好的测试员不仅薪资高,而且大多数集中在一线互联网企业工作,让人感觉非常高大上的同时,也想去 ...
- chage命令详解
基础命令学习目录首页 原文链接:https://www.jb51.net/article/78693.htm linux chage命令简介: chage命令用于密码实效管理,该是用来修改帐号和密码的 ...
- Django之Form
目录 一.说明 二.参数说明 三.自定义验证规则 四.实例 一.说明 Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数 ...
- DB2分页查询简单示例
select * from ( select a.* ,rownumber() over(order by create_time desc) as rowid from ( select * fro ...
- [buaa-SE-2017]个人作业-week3
个人作业-week3:案例分析 分析产品:Bing词典 Part1:调研&评测 1.软件评测和Bug汇报 这次我选择Bing词典的原因是在于,首先我使用过的词典软件较多,平台涵盖PC端.网站. ...
- Leetcode题库——8.字符串转为整数【##】
@author: ZZQ @software: PyCharm @file: myAtoi.py @time: 2018/9/20 20:54 要求:实现 atoi,将字符串转为整数. 1)根据需要丢 ...
- 在虚拟机中安装Ubuntu详细过程
参考:http://blog.csdn.net/u013142781/article/details/50529030
- 微信小程序 功能函数 点击传参和页面
// 商品详情页跳转函数 detailInto: function (e) { // console.log() var change = e.currentTarget.dataset.id; wx ...
- 网页正文提取,降噪的实现(readability/Document)
安装: pip install readability-lxml 使用: # encoding:utf-8import html2textimport requestsimport refrom re ...
- 使用Fiddler重定向App的网络请求
前言 开发中手机app只能访问生产环境地址,所以给开发调试带来不便,可以通过Fiddler的代理和urlreplace方式解决. 步骤 1.开启Fiddler的代理模式Tools->Teleri ...