9.19[XJOI] NOIP训练37
上午[XJOI] NOIP训练37
T1 同余方程
Problem description
已知一个整数a,素数p,求解 $x^{2}\equiv a(mod p) $ 是否有整数解
Solution
据说是二次剩余
作为一个蒟蒻,非常不正经的来证一下
由于p是质数,所以(1) 当p=2,则一定有解
(2) 如果p<>2
\(x\equiv a^{\frac{1}{2}}(mod p)\)
\(x^{p-1}\equiv a^{\frac{p-1}{a}}(modp)\)
又因为费马小定理
\(x^{p-1}\equiv 1(modp)\)
所以\(a^{\frac{p-1}{2}}\equiv 1(modp)\),
这样就很完美的得到了答案
Code
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll T,a,p,ans;
ll pow(ll a,ll b){
ll res=1,base=(b-1)/2;
if (a==0) return 0;
while(base){
if (base&1) res=res*a%b;
base>>=1; a=a*a%b;
}
return res;
}
int main(){
scanf("%d",&T);
while (T--){
scanf("%lld%lld",&a,&p);
ans=pow(a,p);
if (ans==1) printf("YES\n");
else printf("NO\n");
}
}
T2 重复串
Problem description
求最少删掉几个字符,使得最后答案成为重复串
Solution
这可能是我做过最简单的T2吧,
最暴力的O(\(n^{3}\))Dp,枚举中点,然后做一个lcs
T3 摘苹果
Solution
直接进行树上贪心,对于每个节点,将它的每个子节点当做一个叶子结点(及合并了子树的信息),
然后找出最大的l,然后判断哪些子节点的r小于这个l,那么这说明只能独立减掉。
其他的节点则可以合并到根节点上,变成一个节点,只是lr变了一下而已。
(此段文字为whc大佬所言) 在此%%%whc
Code
#include<bits/stdc++.h>
using namespace std;
int l,r,ans=0;
void dfs(int &l,int &r){
int k,x,y;
l=0; scanf("%d",&k);
if (k==0) scanf("%d%d",&l,&r);
else {
vector <int> a;
for (int i=0;i<k;++i)
dfs(x,y),l=max(l,x),a.push_back(y);
sort(a.begin(),a.end());
for (int i=0;i<k;++i)
if (a[i]<l) ++ans;
else{
r=a[i]; return;
}
}
}
int main(){
dfs(l,r);
printf("%d",ans+1);
return 0;
}
下午及晚上
非常快的迅速订完题目,然后的然后,我也不知道了
一日总结
今天破天荒的用了一下markdown来写博客
对于这个不能调字体我也是非常无奈啊
决定如果没有数学题,绝不用markdown
还有这里我要严重吐槽一下各科老师,对!所有老师!
一次又一次的加深了我对xj的**感情
当然我会努力只在这里呆一年的,但对于在这儿的每一天,我一定都会过好
9.19[XJOI] NOIP训练37的更多相关文章
- 9.18[XJOI] NOIP训练36
***在休息了周末两天(好吧其实只有半天),又一次投入了学车的怀抱,重新窝在这个熟悉的机房 今日9.18(今天以后决定不写打卡了) 日常一日总结 一个昏昏欲睡的早晨 打了一套不知道是谁出的题目,空间限 ...
- 9.14[XJOI] NOIP训练33
今日9.14 洛谷打卡:大凶!!!(换个字体玩玩qwq) -------------------------------------------------------- 一个超颓的上午 今天又是fl ...
- 9.13[XJOI] NOIP训练32
今日9.13 洛谷打卡:小吉(今天心情不错,决定取消密码) (日常记流水账) 上午 今天听说是鏼鏼的题目,题面非常的清真啊,也没有当初以为的爆零啊 T1 排排坐 非常非常清真的模拟或是结论题,再次将难 ...
- Noip 训练指南
目录 Noip 训练指南 图论 数据结构 位运算 期望 题解 Noip 训练指南 目前完成 \(4 / 72\) 图论 [ ] 跳楼机 [ ] 墨墨的等式 [ ] 最优贸易 [ ] 泥泞的道路 [ ] ...
- 2018.10.19 NOIP训练 变化的序列(线性dp)
传送门 f[i][j]f[i][j]f[i][j]表示后iii个对答案贡献有jjj个a的方案数. 可以发现最后a,ba,ba,b的总个数一定是n∗(n−1)/2n*(n-1)/2n∗(n−1)/2 因 ...
- 2018.10.19 NOIP训练 桌子(快速幂优化dp)
传送门 勉强算一道dp好题. 显然第kkk列和第k+nk+nk+n列放的棋子数是相同的. 因此只需要统计出前nnn列的选法数. 对于前mmm%nnn列,一共有(m−1)/n+1(m-1)/n+1(m− ...
- 2018.10.19 NOIP训练 游戏问题(分组背包)
传送门 分组背包经典问题. 令f[i][j]f[i][j]f[i][j]表示前iii组花费为jjj的最优值. g[i][j]g[i][j]g[i][j]表示前iii组,第iii组已经支付了平台费用的最 ...
- 2018.10.19 NOIP训练 yk赚钱记(01分数规划)
传送门 其实是一个裸的最优比率生成树. 注意精度的控制就行了. 代码
- test20190803 夏令营NOIP训练19
60+100+0=160 贪婪大陆 面对蚂蚁们的疯狂进攻,小FF的Tower defence宣告失败--人类被蚂蚁们逼到了Greed Island上的一个海湾.现在,小FF的后方是一望无际的大海, 前 ...
随机推荐
- asp.net mvc学习入门
MVC是什么? M: Model就是我们获取的网页需要的数据 V: View就是我们的aspx页面,注意这是一个不包含后台代码文件的aspx页面.(其实带有.asp.cs文件也不会有编译错误,但是这样 ...
- React Native - 使用Vibration API实现设备振动
有时程序中需要实现这样的功能,当有重要的消息提醒时,我们会发出声音告知用户.而如果用户关闭了声音,那么就可以改用振动来提醒用户. 使用 React Native 提供的 Vibration API,我 ...
- Tomcat Eclipse Debug出现异常
1.可能是java类没有及时更新成class文件2.本地程序没有同步到Tommcat服务器里面3.Servlet类里面加了版本号private static final long serialVers ...
- idea中git回滚到指定分支
1.git - > show history,选中回滚的指定版本,右击copy revision number 粘出版本号 2.git -> reset hard 出险新页面之后,选中ha ...
- PHP stream_socket_server
stream_socket_server - 创建一个Internet或Unix域服务器套接字 描述 资源stream_socket_server(字符串local_socket [摘要和错误号[,串 ...
- ADB 命令和monkey
一.概要 1.什么是adb? adb全称为Android Debug Bridge,就是起到调试桥的作用.顾名思义,adb就是一个debug工具. 2.adb工作原理 不是很理解?那就来看看它的工作原 ...
- 洛谷P1464 Function
对于一个递归函数w(a,b,c)w(a,b,c) 如果a \le 0a≤0 or b \le 0b≤0 or c \le 0c≤0就返回值11. 如果a>20a>20 or b>20 ...
- BZOJ 2006 [NOI2010]超级钢琴 (堆+主席树)
题面:BZOJ传送门 洛谷传送门 让你求前$K$大的子序列和,$n\leq 5*10^{5}$ 只想到了个$nlog^{2}n$的做法,似乎要被卡常就看题解了.. 好神奇的操作啊,我傻了 我们把序列和 ...
- Linux思维导图之inode、mv、cp和硬软链接
标准I / O和管道: ps aux进程管理命令(和win任务管理器一样); 当前命令行输出窗口,键盘的输入即是标准输入.标准输出就是执行了的命令,无法执行的命令或错误信息是标准错误, ...
- python爬虫07 | 有了 BeautifulSoup ,妈妈再也不用担心我的正则表达式了
我们上次做了 你的第一个爬虫,爬取当当网 Top 500 本五星好评书籍 有些朋友觉得 利用正则表达式去提取信息 太特么麻烦了 有没有什么别的方式 更方便过滤我们想要的内容啊 emmmm 你还别说 还 ...