"字节跳动杯"2018中国大学生程序设计竞赛-女生专场
口算训练
- #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中国大学生程序设计竞赛-女生专场的更多相关文章
- "字节跳动杯"2018中国大学生程序设计竞赛-女生专场 Solution
A - 口算训练 题意:询问 $[L, R]$区间内 的所有数的乘积是否是D的倍数 思路:考虑分解质因数 显然,一个数$x > \sqrt{x} 的质因子只有一个$ 那么我们考虑将小于$\sqr ...
- 2017中国大学生程序设计竞赛 - 女生专场 Deleting Edges(思维+最短路)
Deleting Edges Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- 2017中国大学生程序设计竞赛 - 女生专场 Happy Necklace(递推+矩阵快速幂)
Happy Necklace Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- 2017中国大学生程序设计竞赛 - 女生专场(Graph Theory)
Graph Theory Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)To ...
- 2017中国大学生程序设计竞赛 - 女生专场(dp)
Building Shops Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) To ...
- "巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场
Combine String #include<cstdio> #include<cstring> #include<iostream> #include<a ...
- hdu_5705_Clock("巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5705 题意:给你一个时间和一个角度,问你下一个时针和分针形成给出的角度是什么时候 题解:我们可以将这个 ...
- hdu_5707_Combine String("巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5707 题意:给你三个字符串 a,b,c,问你 c能否拆成a,b,a,b串的每一个字符在c中不能变 题解 ...
- HDU 6024(中国大学生程序设计竞赛女生专场1002)
这是CCPC女生专场的一道dp题.大佬们都说它简单,我并没有感到它有多简单. 先说一下题意:在一条直线上,有n个教室,现在我要在这些教室里从左到右地建设一些作为糖果屋,每个教室都有自己的坐标xi 和建 ...
随机推荐
- HDU4965 Fast Matrix Calculation —— 矩阵乘法、快速幂
题目链接:https://vjudge.net/problem/HDU-4965 Fast Matrix Calculation Time Limit: 2000/1000 MS (Java/Othe ...
- Nginx安装教程(Centos6.8)
1.安装gcc gcc-c++(如新环境,未安装请先安装 yum install -y gcc gcc-c++ 2.安装wget yum -y install wget 3.安装PCRE库 cd /h ...
- rc.local 开启自启动,检测是否成功
rc.local /etc/init.d/nginx start 查看运行状态 systemctl status rc-local ● rc-local.service - /etc/rc.local ...
- Swing项目编译成exe,并且打包成安装文件(二)
前面我们讲到了将Swing项目编译成双击可执行的文件exe,这篇我就教大家怎么把exe打包成需要在电脑安装的那种,首先需要一个工具,Inno Setup 编译器, 下载地址,我这个是汉化版的,双击打开 ...
- python学习笔记:第二天(运算符)
Python3 运算符 注:以下部分示例源自于http://www.runoob.com/ 1.算术运算符 假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b ...
- YCSB-mapkeer-leveldb实测
使用thrift0.8.0编译好java版的mapkeeper并安装到ycsb下,使用thrift0.9.2编译好c++版的mapkeeper并编译leveldb客户端运行. 测试成功.recordc ...
- hdu-5747 Aaronson(水题)
题目链接: Aaronson Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others ...
- 杂文笔记《Redis在万亿级日访问量下的中断优化》
杂文笔记<Redis在万亿级日访问量下的中断优化> Redis在万亿级日访问量下的中断优化 https://mp.weixin.qq.com/s?__biz=MjM5ODI5Njc2MA= ...
- 杂项:UI
ylbtech-杂项:UI 1.返回顶部 1. UI即User Interface(用户界面)的简称.泛指用户的操作界面,包含移动APP,网页,智能穿戴设备等.UI设计主要指界面的样式,美观程度.而使 ...
- final/finalize/finally的区别
一.性质不同 (1)final为关键字: (2)finalize()为方法:---垃圾回收机制中的方法(GC) (3)finally为为区块标志,用于try语句中: 二.作用 (1)final为用于标 ...