2020牛客暑期多校训练营(第四场)
这场属实有点难受

文章目录

  • A Ancient Distance
  • B Basic Gcd Problem
    • 题目
    • 代码:
  • C Count New String
  • D Dividing Strings
  • E Eliminate++
  • F Finding the Order
    • 题意:
    • 题解:
    • 代码:
  • G Geometry Challenge
  • H Harder Gcd Problem
  • I Investigating Legions
  • J Jumping on the Graph

A Ancient Distance

B Basic Gcd Problem

爷被卡自闭了

题目

仔细分析题其实就是问cf(x)等于等于多少
而f(x)等于什么呢?
唯一分解定理

而我们要做的就是求出f(x)=a1+a2+a3+…an
pow(c,sum)
我被int和longlong卡了,快速幂我用的longlong结果超时了
其实思路不难,多注意细节

代码:

#include <iostream>
#include <stdio.h>
#include<vector>
#include<queue>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
typedef long long ll;
const int maxn=1e6+3;
const ll mod=1e9+7;
ll sum=0;
ll spr[maxn],zs[maxn],ds[maxn];
inline ll poww(ll a,ll b,ll p)
{ll res=1;ll base=a%p;while(b){if(b&1){res=(res*base)%p;}base=( base*base)%p;b>>=1;}return res%p;
}
//template <typename T>
//inline void read(T &s){//     T t=1; char k=getchar(); s=0;
//    for (;k<'0'||k>'9';k=getchar()) if (k=='-') t=-1;//判断该数正负
//    for (;k>='0'&&k<='9';k=getchar()) s=(s<<1)+(s<<3)+(k^48);//<<1加上<<3就相当于*10,但是位运算的速度较快,^48也相当于-‘0’,同理,较快。
//    s*=t;
//}
//void olp(){ //先打表,欧拉筛
//    memset(is,true,sizeof is);
//    is[0] = is[1] = 0;
//    for(int i=2;i<maxn;i++){//        if(is[i]) spr[cnt++]= i;
//        for(int j=0;i*spr[j]<maxn&&j<cnt;j++){//            is[i*spr[j]] = 0;
//            if(i%spr[j]==0) break;
//        }
//    }
//}
void fj(int x){ //不同素数的个数for(int i=2;i*i<=x;i++){while(x%i==0){x/=i,sum++;      }}if(x!=1){ //如果分解玩x都不等于1,那么x必定是一个素数sum++;}return ;
}
int main(){//olp();int t;scanf("%d",&t);while(t--){ll n,c;scanf("%lld%lld",&n,&c);//  cout<<n<<" "<<c<<endl;sum=0;fj(n);ll ww=poww(c,sum,mod);printf("%lld\n",ww);}return 0;
}

C Count New String

D Dividing Strings

E Eliminate++

F Finding the Order

题意:

两条平行直线,上一条是ab(a在左边,b在右边),下一条是dc(但是d和c谁在左谁在右未知)
现在给你,ac,ad,bc,bd的长度,问d和c谁在左谁在右

题解:

画图分析一下
三种情况:cd正常,c很远,d很远
图中是cd的情况
而dc的情况刚好相反

代码:

#include<bits/stdc++.h>
#define rg register
using namespace std;
//  scanf("%d",);
//  printf("%d",);
int gcd(int a,int b)
{if(b==0)return a;else return gcd(b,a%b);
}
inline int read(){int s=0,w=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();return s*w;
}
int main()
{int t;t=read();while(t--){int ac=read(),ad=read(),bc=read(),bd=read();if(ac<=ad&&bc>=bd){printf("AB//CD\n");}else if(ac>=ad&&bc>=bd&&ac<bc){printf("AB//CD\n");}else if(ac<=ad&&bc<=bd&&ad>bd){printf("AB//CD\n");}else printf("AB//DC\n");}return 0;
}//printf("AB//CD\n");
//printf("AB//DC\n");

G Geometry Challenge

H Harder Gcd Problem

I Investigating Legions

J Jumping on the Graph

2020牛客暑期多校训练营(第四场)相关推荐

  1. 2020牛客暑期多校训练营(第一场)

    文章目录 A B-Suffix Array B Infinite Tree C Domino D Quadratic Form E Counting Spanning Trees F Infinite ...

  2. 2020牛客暑期多校训练营(第二场)

    2020牛客暑期多校训练营(第二场) 最烦英语题 文章目录 A All with Pairs B Boundary C Cover the Tree D Duration E Exclusive OR ...

  3. E Groundhog Chasing Death(2020牛客暑期多校训练营(第九场))(思维+费马小定理+质因子分解)

    E Groundhog Chasing Death(2020牛客暑期多校训练营(第九场))(思维+费马小定理+质因子分解) 链接:https://ac.nowcoder.com/acm/contest ...

  4. 2020牛客暑期多校训练营(第一场)A B-Suffix Array(后缀数组,思维)

    链接:https://ac.nowcoder.com/acm/contest/5666/A 来源:牛客网 题目描述 The BBB-function B(t1t2-tk)=b1b2-bkB(t_1 t ...

  5. 2020牛客暑期多校训练营(第二场)Just Shuffle

    https://ac.nowcoder.com/acm/contest/5667/J 题目大意:给你一个置换A,使得置换P^k=A,让你求出置换P. 思路:我们根据置换A再置换z次,那么就等于置换p ...

  6. 2020牛客暑期多校训练营(第一场)j-Easy Integration(思维,分数取模,沃斯利积分)

    题目链接 题意: 给你一个积分公式,给你一个n,问积分公式的值取模后的结果. 思路: 积分公式(沃利斯积分)值的结论直接就是(n!)^2/(2n+1)!,求个阶乘,再用费马小定理给1/(2n+1)!取 ...

  7. 2020 牛客暑期多校训练营(第一场)F

    题目大意: 多次输入两个a,b字符串他们可以无限次的重复变成aaa,或者bbb 比较他们的大小,相同输出 =,a<b输出 <,a>b输出 >. 输入: aa b zzz zz ...

  8. 2020牛客暑期多校训练营(第二场)未完待续......

    F. Fake Maxpooling 题目: 题目大意: 输入n,m,k.矩阵的尺寸为nm,其中每一个元素为A[i][j] = lcm( i , j ).从中找出所有kk的子矩阵中元素最大的数之和. ...

  9. 2020牛客暑期多校训练营(第一场)J、Easy Integration (数学、分部积分)

    题目链接 题面: 题意: 求给定的定积分. 题解,化成 ∫ xn (1-x)n dx 然后用分部积分法即可得. 分部积分法:∫ udv = uv - ∫ vdu 最终为 n!/((n+1)*(n+2) ...

  10. 2020牛客暑期多校训练营(第二场)题解

    废话 蒟蒻不会积分,K不会做. 文章目录 废话 A. All with Pairs B. Boundary C. Cover the Tree D. Duration E. Exclusive OR ...

最新文章

  1. Python Day26:多态、封装、内置函数:__str__、__del__、反射(反省)、动态导入模块...
  2. 受益一生的15个学习习惯
  3. Ubuntu11.10下载android4.0.1源码
  4. 斜率-有问题,部分没有归一化-错了——图片保存
  5. JAVA基础进阶day01
  6. 前端学习(2567):指令的本质
  7. jacobi matlab程序,jacobi迭代法实验MATLAB程序数值分析
  8. 文字处理技术:吾知道他们听不懂,为何讲了一把WP布局
  9. 数字化公安预审系统应用业务流程解析
  10. TCP和UDP的区别与联系
  11. 实时单目物体SLAM Real-time Monocular Object SLAM
  12. vector用erase删除元素时,为什么被删元素的析构函数会被调用更多次?
  13. pdf合并与拆分软件的使用
  14. APP STORE又崩了?可以通过DNS解决!
  15. 文献阅读笔记(2022.11.14)
  16. ac Let‘s Play Curling
  17. BUG一词是如何来的?
  18. Java招聘的一些心得和建议
  19. 为什么说伊利丹是程序员?
  20. 深圳湾口岸过关进入香港的交通方法

热门文章

  1. 用 Python 实现一个大数据搜索引擎
  2. 从头到尾彻底理解傅里叶变换算法(下)
  3. abap al设置单元格可编辑 oo_润乾报表美化设置 -- 样式
  4. oracle中的的instr,Oracle中instr函数使用方法
  5. function里面可以写function吗_氨基酸可以和蜂蜜一起喝吗?蜂蜜里面有氨基酸吗?...
  6. ajax中迭代是什么意思,Ajax 局部刷新迭代器的内容
  7. 计算机bq,BQ24721部分翻译
  8. java什么是静态_什么是java静态
  9. git使用的基本流程_git命令的基本使用
  10. oracle leg函数,032-函数的嵌套与LEGB原则