VJ数论专题AC代码临时保存
//A
#include<bits/stdc++.h>
using namespace std;
bool vis[1000010];
void Get_Prime()
{
int n = 1000010;
int m = sqrt(n+0.5);
memset(vis,0,sizeof(vis));
for(int i=2; i<=m; i++) if(!vis[i])
for(int j=i*i; j<=n; j+=i) vis[j] = 1;
return ;
}
int Find(int n)
{
for(int i=n+1; ; i++)
if(!vis[i]) return i;
}
int main()
{
Get_Prime();
int t,n,x;
long long sum;
scanf("%d",&t);
for(int i=1; i<=t; i++)
{
scanf("%d",&n);
sum = 0;
while(n--)
{
scanf("%d",&x);
sum += Find(x);
}
printf("Case %d: %lld Xukha\n",i,sum);
}
return 0;
}
//C
#include<bits/stdc++.h>
#define MAXN 1000010
using namespace std;
bool vis[MAXN+10];
long int prime[MAXN+10];
long cnt,cnt1,cnt2;
void GetPrime()
{
cnt = 0;
memset(vis,0,sizeof(vis));
for(long int i=2; i<MAXN; i++)
{
if(!vis[i]) prime[cnt++] = i;
for(int j=0; j<cnt && i * prime[j] < MAXN; j++)
{
vis[i * prime[j]] = 1;
if(!i%prime[j]) break;
}
}
return ;
}
long long int GetY(long int n)
{
cnt1 = 0;
long long sum = 1;
long m = sqrt(n);
while(n>1 && prime[cnt1] <= m)
{
long cc=0;
while(n%prime[cnt1] == 0 && n > 1)
{
cc++;
n/=prime[cnt1];
}
sum *= cc + 1;
cnt1++;
}
if(n!=1) sum *= 2;
return sum;
}
int main()
{
GetPrime();
int t;
long a,b;
scanf("%d",&t);
for(int j=1; j<=t; j++)
{
scanf("%ld %ld",&a,&b);
if(b * b >= a)
{
printf("Case %d: 0\n",j);
continue;
}
long long ans = GetY(a);
ans /= 2;
for(int i = 1; i<b; i++)
if(a%i == 0) ans--;
printf("Case %d: %lld\n",j,ans);
}
return 0;
}
//D
#include<bits/stdc++.h>
using namespace std;
int main()
{
int t,cnt=0;
long long n,k;
scanf("%d",&t);
while(t--)
{
scanf("%lld",&n);
k = n;
n -= (long long)sqrt(k);
n -= (long long)sqrt(k/2);
printf("Case %d: %lld\n",++cnt,n);
}
return 0;
}
#include<cstdio>
#include<cstdlib>
#include<cstring>
using namespace std;
const int MAXN = 3e5 + 10;
char s[50010][50];
int tree[MAXN][26];
bool flagg[MAXN];
int cnt;
void Insert(char *str)
{
int len = strlen(str);
int root = 0;
for(int i=0; i<len; i++)
{
int id = str[i] - 'a';
if(!tree[root][id]) tree[root][id] = ++cnt;
root = tree[root][id];
}
flagg[root] = true;
return ;
}
int Find(char *str, int n)
{
int len = strlen(str);
int root = 0;
int x = 0;
for(int i=0; i<len; i++)
{
int id = str[i] - 'a';
root = tree[root][id];
if(n!=-1 && flagg[root]==true && i<len-1)
{
if((x++) == n)
return i;
}
}
if(n==-1 && flagg[root] == true) return 1;
return -1;
}
int main()
{
char s1[25],s2[25];
memset(tree,0,sizeof(tree));
memset(flagg,0,sizeof(flagg));
int j = cnt = 0;
while(~scanf("%s",s[j]))
{
Insert(s[j++]);
}
for(int i=0; i<j; i++)
{
bool flag = false;
for(int l=0; ;l++)//L表示要查找单词的第几个前缀
{
int d = Find(s[i],l);
if(d == -1) break;//如果已经找不到前缀表示该单词不可能是两部分拼成的
d = Find(&s[i][d+1],-1);//-1表示要查找的是单词的后缀部分
if(d==1)//如果能找到相应后缀表示该单词是拼接而成
{
flag = true;
break;
}
}
if(flag) printf("%s\n",s[i]);
}
return 0;
}
VJ数论专题AC代码临时保存的更多相关文章
- 2.4测试赛AC代码临时保存
//H #include<cstdio> #include<cstdlib> #include<cstring> #include<stack> usi ...
- 2.2测试赛AC代码临时保存
//A #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> ...
- python爬虫学习(7) —— 爬取你的AC代码
上一篇文章中,我们介绍了python爬虫利器--requests,并且拿HDU做了小测试. 这篇文章,我们来爬取一下自己AC的代码. 1 确定ac代码对应的页面 如下图所示,我们一般情况可以通过该顺序 ...
- 【南阳OJ分类之语言入门】80题题目+AC代码汇总
小技巧:本文之前由csdn自动生成了一个目录,不必下拉一个一个去找,可通过目录标题直接定位. 本文转载自本人的csdn博客,复制过来的,排版就不弄了,欢迎转载. 声明: 题目部分皆为南阳OJ题目. 代 ...
- HDU2449 Gauss Elimination 高斯消元 高精度 (C++ AC代码)
原文链接https://www.cnblogs.com/zhouzhendong/p/HDU2449.html 题目传送门 - HDU2449 题意 高精度高斯消元. 输入 $n$ 个 $n$ 元方程 ...
- ZOJ Problem Set - 1338 Up and Down Sequences 解释 ac代码
这道题目我一开始一头雾水,怎么都数不对,参考了下网上的博文,才弄懂. 题意是这样的,如果是上升序列,上升序列的长度不是所有上升数字的,是这么规定的,如果它与前一个数字构成上升,那么这个数字算上长度.所 ...
- ZOJ Problem Set - 1334 Basically Speaking ac代码及总结
这道题目不难,是一道简单的进制转换问题,但是发现了自己两个遗漏的知识点: 1.关于scanf (1)scanf函数在输入时是以回车或者空格作为一次输入的结束 (2)scanf函数在输入字符串的过程中是 ...
- LeetCode OJ Symmetric Tree 判断是否为对称树(AC代码)
思路: 主要判断左子树与右子树. 在判断左时,循环下去肯定会到达叶子结点中最左边的结点与最右边的结点比较. 到了这一步因为他们都没有左(右)子树了,所以得开始判断这两个结点的右(左)子树了. 当某 ...
- 【原创】用Python爬取LeetCode的AC代码到Github
在leetCode写了105道题高调膜科,考虑搬迁到自己的GitHub上,做成一个解题题库,面试的时候也可以秀一个 但是!但是! leetCode在线IDE的功能不要太舒服,我直接线上A了不少题,本地 ...
随机推荐
- 5.Python安装依赖(包)模块方法介绍
1.前提条件 1). 确保已经安装需要的Python版本 2). 确保已经将Python的目录加入到环境变量中 2. Python安装包的几种常用方式 1). pip安装方式(正常在线安装) 2). ...
- maven 新建站点
站点建立步骤启动eclipse_sts--->新建项目--->搜索maven -->选择maven-archetype-webapp 红色错误配置新建项目完成后--->inde ...
- 将Chrome浏览器中的扩展程序导出为crx插件文件
将Chrome浏览器中安装的插件程序导出为crx插件文件 以360急速浏览器为例进行导出crx插件程序 1.在Chrom商店中找到需要的插件,安装到浏览器的扩展程序里面()IDM Integratio ...
- Gird(1)
目录 网格布局 grid(1) 实现方式 对容器设置的属性 行高与列宽的设置 单元格的间距 内容的位置 表格在容器的位置 兼容问题 网格布局 grid(1) 实现方式 display:grid 也可成 ...
- Selenium实战(六)——数据驱动应用
一.数据驱动 由于大多数文章和资料都把“读取数据文件”看做数据驱动的标志,下面创建一个baidu_data.csv文件: 文件第一列为测试用例名称,第二列为搜索的关键字.接下来创建test_baidu ...
- GHO文件安装到Vmware的两种姿势
1.使用 Ghost11.5.1.2269 将gho转换为vmdk文件(虚拟机硬盘),Vmware新建虚拟机自定义配置,然后添加已有的虚拟硬盘文件. 注意ghost的版本,如果你是用Ghost11.5 ...
- 2018 IEEE极限编程大赛 题解
去年742,今年72,也算一种小小的进步. 明年前30(笑 1. Drawing Rooted Binary Trees 给定一个树的中序和前序的遍历,要求输出这棵树(包括空格的) #include ...
- javaSE学习笔记(10)---List、Set
javaSE学习笔记(10)---List.Set 1.数据存储的数据结构 常见的数据结构 数据存储的常用结构有:栈.队列.数组.链表和红黑树. 1.栈 栈:stack,又称堆栈,它是运算受限的线性表 ...
- LOJ #3119. 「CTS2019 | CTSC2019」随机立方体 组合计数+二项式反演
好神的一道计数题呀. code: #include <cstdio> #include <algorithm> #include <cstring> #define ...
- Hyperparameter tuning
超参数调整 详细可以参考官方文档 定义 在拟合模型之前需要定义好的参数 适用 Linear regression: Choosing parameters Ridge/lasso regression ...