口算训练

 #include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <string>
#include <map>
#include <cmath>
#include <vector> #define Faster ios::sync_with_stdio(false),cin.tie(0)
#define Read freopen("in.txt","r",stdin),freopen("out.txt","w",stdout)
#define Close fclose(stdin),fclose(stdout)
const int maxn = 1e5 + ;
using namespace std;
const int MOD = 1e9+;
typedef long long ll; vector<int> g[maxn];
//下标肯定是从小到大按顺序的 void res(int id, int x){
for(int i = ;i*i <= x;i++){
while(x%i == ){
g[i].push_back(id);
x /= i;
}
}
if(x > )
g[x].push_back(id);
} int query(int l,int r, int x){
return upper_bound(g[x].begin(), g[x].end(), r) - lower_bound(g[x].begin(),g[x].end(), l);
} void init(){
for(int i = ;i < maxn;i++)
g[i].clear();
} int main(){
// Faster;
int t;
// cin >> t;
scanf("%d", &t);
while(t--){
init();
int n, q;
scanf("%d%d", &n, &q);
for(int i = ;i <= n;i++){
int x;
// cin >> x;
scanf("%d", &x);
res(i, x);
}
while(q--){
int l, r, d, num;
// cin >> l >> r >> d;
scanf("%d%d%d", &l, &r, &d);
bool ok = true;
for(int i = ;i*i <= d;i++){
int cnt = ;
while(d%i == ){
cnt++;
d /= i;
}
//因子为i 的数目 大于(l,r)中i 的个数
num = query(l, r, i);
if(cnt > num){
ok = false;
break;
}
}
if(ok && d > ){
num = query(l, r, d);
if(num == )
ok = false;
}
if(ok)
// cout << "Yes" << endl;
printf("Yes\n");
else
// cout << "No" << endl;
printf("No\n");
}
}
return ;
}

缺失的数据范围

 #include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <string>
#include <map>
#include <cmath>
#include <vector> #define Faster ios::sync_with_stdio(false),cin.tie(0)
#define Read freopen("in.txt","r",stdin),freopen("out.txt","w",stdout)
#define Close fclose(stdin),fclose(stdout)
const int maxn = 1e4 + ;
using namespace std;
const int MOD = 1e9+;
typedef unsigned long long ll; int a, b;
ll k; bool check(ll x){
long double ans = ;
for(int i = ;i < a;i++){
ans *= x;
if(ans > k)
return false;
}
ll bb = ceil(log2(x));
for(int i = ;i < b;i++){
ans *= bb;
if(ans > k)
return false;
}
return true;
} int main(){
Faster;
int n;
cin >> n;
while(n--){
cin >> a >> b >> k;
ll l = ;
ll r = k;
while(l <= r){
ll mid = (l+r)/;
if(check(mid)){
l = mid+;
}
else{
r = mid-;
}
}
cout << r << endl;
}
return ;
}

赛题分析

 #include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <string>
#include <map>
#include <cmath>
#include <vector> #define Faster ios::sync_with_stdio(false),cin.tie(0)
#define Read freopen("in.txt","r",stdin),freopen("out.txt","w",stdout)
#define Close fclose(stdin),fclose(stdout)
const int maxn = 1e4 + ;
using namespace std;
const int MOD = 1e9+;
typedef long long ll; #define INF 0xfffffff int main(){
Faster;
int t;
cin >> t;
int cnt = ;
while(t--){
int n, m;
cin >> n >> m;
int Min1 = INF;
int Min2 = INF;
for(int i = ;i < n;i++){
int x;
cin >> x;
if(x < Min1){
Min1 = x;
}
}
for(int i = ;i < m;i++){
int x;
cin >> x;
if(x < Min2){
Min2 = x;
}
}
cout << "Problem " << ++cnt << ":" << endl;
cout << "Shortest judge solution: " << Min1 << " bytes." << endl;
if(Min2 == INF)
cout << "Shortest team solution: N/A bytes." << endl;
else
cout << "Shortest team solution: " << Min2 << " bytes." << endl;
}
return ;
}

SA-IS后缀数组

 #include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <string>
#include <map>
#include <cmath>
#include <vector> #define Faster ios::sync_with_stdio(false),cin.tie(0)
#define Read freopen("in.txt","r",stdin),freopen("out.txt","w",stdout)
#define Close fclose(stdin),fclose(stdout)
const int maxn = 1e4 + ;
using namespace std;
const int MOD = 1e9+;
typedef long long ll; int main(){
Faster;
int t;
cin >> t;
while(t--){
int n;
cin >> n;
string s;
cin >> s;
int cnt = ;
for(int i = ;i < n-;i++){
if(s[i] == s[i+]){
cnt++;
}
else if(s[i] < s[i+]){
cnt++;
while(cnt){
cnt--;
cout << "<";
}
}
else if(s[i] > s[i+]){
cnt++;
while(cnt){
cnt--;
cout << ">";
}
}
}
while(cnt--){
cout << ">";
}
cout << endl;
}
return ;
}

"字节跳动杯"2018中国大学生程序设计竞赛-女生专场的更多相关文章

  1. "字节跳动杯"2018中国大学生程序设计竞赛-女生专场 Solution

    A - 口算训练 题意:询问 $[L, R]$区间内 的所有数的乘积是否是D的倍数 思路:考虑分解质因数 显然,一个数$x > \sqrt{x} 的质因子只有一个$ 那么我们考虑将小于$\sqr ...

  2. 2017中国大学生程序设计竞赛 - 女生专场 Deleting Edges(思维+最短路)

    Deleting Edges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  3. 2017中国大学生程序设计竞赛 - 女生专场 Happy Necklace(递推+矩阵快速幂)

    Happy Necklace Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  4. 2017中国大学生程序设计竞赛 - 女生专场(Graph Theory)

    Graph Theory Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)To ...

  5. 2017中国大学生程序设计竞赛 - 女生专场(dp)

    Building Shops Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) To ...

  6. "巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场

    Combine String #include<cstdio> #include<cstring> #include<iostream> #include<a ...

  7. hdu_5705_Clock("巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5705 题意:给你一个时间和一个角度,问你下一个时针和分针形成给出的角度是什么时候 题解:我们可以将这个 ...

  8. hdu_5707_Combine String("巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5707 题意:给你三个字符串 a,b,c,问你 c能否拆成a,b,a,b串的每一个字符在c中不能变 题解 ...

  9. HDU 6024(中国大学生程序设计竞赛女生专场1002)

    这是CCPC女生专场的一道dp题.大佬们都说它简单,我并没有感到它有多简单. 先说一下题意:在一条直线上,有n个教室,现在我要在这些教室里从左到右地建设一些作为糖果屋,每个教室都有自己的坐标xi 和建 ...

随机推荐

  1. protoc: error while loading shared libraries: libprotoc.so.9: cannot open shared object

    使用protobuf出错:protoc: error while loading shared libraries: libprotoc.so.9: cannot open shared object ...

  2. (linux)BSP板级支持包开发理解

    1. 概述 嵌入式系统由硬件环境.嵌入式操作系统和应用程序组成,硬件环境是操作系统和应用程序运行的硬件平台,它随应用的不同而有不同的要求.硬件平台的多样性是嵌入式系统的主要特点,如何使嵌入式操作系统在 ...

  3. 测试,测试开发,QA,QM,QC--------- 测试之路勿跑偏

    测试,测试开发,QA,QM,QC可能是测试行业里的细分角色了,加了不少群学习,看到不同人有对自己不同的角色定位.我也做了这挺长时间的测试,也和大部分测试同胞一样,为了一份好的工作学习各种各样的技术,但 ...

  4. List集合进行分页

    /** * @ClassName: Text2 * @Description: (集合的分页算法) * @author Luhan * @date 2017年3月16日 下午17:18:06*/pub ...

  5. 什么是AWS Lambda?——事件驱动的函数执行环境

    AWS CTO Werner Vogels在AWS re:Invent 2014大会的第二场主题演讲上公布了两个新服务和一系列新的实例,两个新服务都相当令人瞩目:第一个宣布的新服务是Amazon EC ...

  6. css3计算属性(calc)

    如果有固定头部高度和底部高度,内容的高度或者宽度想要根据浏览器屏幕自适应的话,可以用到css3的计算属性,即calc. 用法如下: 内容区域高/宽 = calc(100% - 头部高宽 - 底部高宽) ...

  7. SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)(转载)

    使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...

  8. iOS 中这些是否熟练掌握——(1)

    声明:本篇博文是作者原创作品.参考1  参考2  参考3  参考4  参考5  参考6 关于网上一些关于iOS资料,自己通过学习做了一些整理,这里仅仅作为笔记,方便自己学习使用,加深理解. 1.什么是 ...

  9. 1.7 hive基本操作

    一.基本命令和设置 1.命令 [root@hadoop-senior hive-0.13.1]# bin/hive Logging initialized using configuration in ...

  10. ElasticSearch基础之映射mapping

    [01]什么是mapping? 首先去看看官方文档,非常重要:https://www.elastic.co/guide/en/elasticsearch/reference/current/mappi ...