//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代码临时保存的更多相关文章

  1. 2.4测试赛AC代码临时保存

    //H #include<cstdio> #include<cstdlib> #include<cstring> #include<stack> usi ...

  2. 2.2测试赛AC代码临时保存

    //A #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> ...

  3. python爬虫学习(7) —— 爬取你的AC代码

    上一篇文章中,我们介绍了python爬虫利器--requests,并且拿HDU做了小测试. 这篇文章,我们来爬取一下自己AC的代码. 1 确定ac代码对应的页面 如下图所示,我们一般情况可以通过该顺序 ...

  4. 【南阳OJ分类之语言入门】80题题目+AC代码汇总

    小技巧:本文之前由csdn自动生成了一个目录,不必下拉一个一个去找,可通过目录标题直接定位. 本文转载自本人的csdn博客,复制过来的,排版就不弄了,欢迎转载. 声明: 题目部分皆为南阳OJ题目. 代 ...

  5. HDU2449 Gauss Elimination 高斯消元 高精度 (C++ AC代码)

    原文链接https://www.cnblogs.com/zhouzhendong/p/HDU2449.html 题目传送门 - HDU2449 题意 高精度高斯消元. 输入 $n$ 个 $n$ 元方程 ...

  6. ZOJ Problem Set - 1338 Up and Down Sequences 解释 ac代码

    这道题目我一开始一头雾水,怎么都数不对,参考了下网上的博文,才弄懂. 题意是这样的,如果是上升序列,上升序列的长度不是所有上升数字的,是这么规定的,如果它与前一个数字构成上升,那么这个数字算上长度.所 ...

  7. ZOJ Problem Set - 1334 Basically Speaking ac代码及总结

    这道题目不难,是一道简单的进制转换问题,但是发现了自己两个遗漏的知识点: 1.关于scanf (1)scanf函数在输入时是以回车或者空格作为一次输入的结束 (2)scanf函数在输入字符串的过程中是 ...

  8. LeetCode OJ Symmetric Tree 判断是否为对称树(AC代码)

      思路: 主要判断左子树与右子树. 在判断左时,循环下去肯定会到达叶子结点中最左边的结点与最右边的结点比较. 到了这一步因为他们都没有左(右)子树了,所以得开始判断这两个结点的右(左)子树了. 当某 ...

  9. 【原创】用Python爬取LeetCode的AC代码到Github

    在leetCode写了105道题高调膜科,考虑搬迁到自己的GitHub上,做成一个解题题库,面试的时候也可以秀一个 但是!但是! leetCode在线IDE的功能不要太舒服,我直接线上A了不少题,本地 ...

随机推荐

  1. 如何优雅的封装requests

    搭建接口自动化测试框架,一般都要对post/get请求做封装. 一般的封装过程是, class MyRequest: def my_post(): """do somet ...

  2. VEH帮你定位程序崩溃地址

    之前朋友有一个服务端程序,总是受到一些人的恶意漏洞攻击,没有源代码,只好反汇编修复了漏洞,并且使用WinLicense加保护授权. 漏洞总不是一次可以修复完的,恶意攻击并没有停止,然后加了WL保护程序 ...

  3. Web服务器开发

    ip地址和端口号 ip地址用来定位计算机 端口号用来定位具体的应用程序 一切需要联网通信的软件都会占用一个端口号 端口号的范围从0-65536之间 在计算机中有一些默认端口号最好不要使用 如http服 ...

  4. 令人抓狂的redis和rediscluster Python驱动包的安装

    本文环境:centos 7,Python3编译安装成功,包括pip3,然后需要安装redis相关的Python3驱动包,本的redis指redis包而非redis数据库,rediscluster类似. ...

  5. JVM和线程池

    本文链接:https://blog.csdn.net/liuwenliang_002/article/details/90074283 ————————————————版权声明:本文为CSDN博主「3 ...

  6. 【笔记】机器学习 - 李宏毅 - 13 - Why Deep

    当参数一样多的时候,神经网络变得更高比变宽更有效果.为什么会这样呢? 其实和软件行业的模块化思想是一致的. 比如,如果直接对这四种分类进行训练,长发的男孩数据较少,那么这一类训练得到的classifi ...

  7. 关于GET和POST请求的区别,最通俗全面的回答

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  8. HTML5音频(自定义mp3播放器源码)

    audio对象 src兼容.ogg .wav .mp3 <audio controls src='data/imooc.wav'></audio> width autoplay ...

  9. numpy包学习笔记

    导入 import numpy as np argsort() numpy中的排序函数 返回的是数组中从小到大的索引值 from numpy import * test=[5,2,3,4,1] pri ...

  10. 请求 - Fetch(未完)

    概念和用法 可以被使用到更多地应用场景中:无论是service workers.Cache API.又或者是其他处理请求和响应的方式,甚至是任何一种需要你自己在程序中生成响应的方式. Cache 接口 ...