MemSQL Start[c]UP 2.0 - Round 1

对角两对双差速轮AGV的平移、直行、转弯和原地旋转之PID控制 本示例将展示如何使用PID控制算法,控制具有对角线布置的两对双差速轮(左前和右后)的AGV,实现平移、直行、转弯和原地旋转等运动。通过对车辆的运动学和PID控制器的设计,我们可以精确地控制AGV的运动 阅读详情

搞了好久才把大部分题目题解看完了,真是太弱了。

A题简单暴力题一个一个匹配,对应位置字母要么相同,要么是'.'.

B题给定一个矩阵,左下角(0,0),右上角(n, m),取4个不同的点连成一段折线,要有最长的折线长度。

排除n == 0 和m == 0 ,剩下的情况中总共由4中情况:

枚举一下就可以了

1. (0,0)->(n,m)->(0, m)->(n, 0)

2. (0,0)->(n,m)->(n, 0)->(0, m)

3.(n,m-1)->(0,0)->(n,m)->(0,1)

4.(0,m-1)->(n,0)->(0,m)->(n,1)

代码:

  1 //Template updates date: 20140718
  2 #include <iostream>
  3 #include <sstream>
  4 #include <cstdio>
  5 #include <climits>
  6 #include <ctime>
  7 #include <cctype>
  8 #include <cstring>
  9 #include <cstdlib>
 10 #include <string>
 11 #include <stack>
 12 #include <set>
 13 #include <map>
 14 #include <cmath>
 15 #include <vector>
 16 #include <queue>
 17 #include <algorithm>
 18 #define  esp 1e-6
 19 #define  inf 0x3f3f3f3f
 20 #define  pi acos(-1.0)
 21 #define  pb push_back
 22 #define  lson l, m, rt<<1
 23 #define  rson m+1, r, rt<<1|1
 24 #define  lowbit(x) (x&(-x))
 25 #define  mp(a, b) make_pair((a), (b))
 26 #define  bit(k) (1<<(k))
 27 #define  iin  freopen("pow.in", "r", stdin);
 28 #define  oout freopen("pow.out", "w", stdout);
 29 #define  in  freopen("solve_in.txt", "r", stdin);
 30 #define  out freopen("solve_out.txt", "w", stdout);
 31 #define  bug puts("********))))))");
 32 #define  Inout iin oout
 33 #define  inout in out
 34 
 35 #define  SET(a, v) memset(a, (v), sizeof(a))
 36 #define  SORT(a)   sort((a).begin(), (a).end())
 37 #define  REV(a)    reverse((a).begin(), (a).end())
 38 #define  READ(a, n) {REP(i, n) cin>>(a)[i];}
 39 #define  REP(i, n) for(int i = 0; i < (n); i++)
 40 #define  VREP(i, n, base) for(int i = (n); i >= (base); i--)
 41 #define  Rep(i, base, n) for(int i = (base); i < (n); i++)
 42 #define  REPS(s, i) for(int i = 0; (s)[i]; i++)
 43 #define  pf(x) ((x)*(x))
 44 #define  mod(n) ((n))
 45 #define  Log(a, b) (log((double)b)/log((double)a))
 46 #define Srand() srand((int)time(0))
 47 #define random(number) (rand()%number)
 48 #define random_range(a, b) (int)(((double)rand()/RAND_MAX)*(b-a) + a)
 49 
 50 using namespace std;
 51 typedef long long  LL;
 52 typedef unsigned long long ULL;
 53 typedef vector<int> VI;
 54 typedef pair<int,int> PII;
 55 typedef vector<PII> VII;
 56 typedef vector<PII, int> VIII;
 57 typedef VI:: iterator IT;
 58 typedef map<string, int> Mps;
 59 typedef map<int, int> Mpi;
 60 typedef map<int, PII> Mpii;
 61 typedef map<PII, int> Mpiii;
 62 double ans[4];
 63 
 64 int main() {
 65 
 66     int n, m;
 67     cin>>n>>m;
 68     if(n == 0) {
 69         printf("%d %d\n", 0, 1);
 70         printf("%d %d\n", 0, m);
 71         printf("%d %d\n", 0, 0);
 72         printf("%d %d\n", 0, m-1);
 73     } else if(m == 0) {
 74         printf("%d %d\n", 1, 0);
 75         printf("%d %d\n", n, 0);
 76         printf("%d %d\n", 0, 0);
 77         printf("%d %d\n", n-1, 0);
 78     } else {
 79         ans[0] = m + 2*sqrt(pf(n)+pf(m));
 80         ans[1] = n + 2*sqrt(pf(n)+pf(m));
 81         ans[2] = sqrt(pf(n)+pf(m))+sqrt(pf(n)+pf(m-1))*2;
 82         ans[3] = sqrt(pf(n)+pf(m))+sqrt(pf(n-1)+pf(m))*2;
 83         int tmp = 0;
 84         REP(i, 4)
 85         if(ans[tmp] < ans[i])
 86             tmp = i;
 87         if(tmp == 0) {
 88             printf("%d %d\n", 0, 0);
 89             printf("%d %d\n", n, m);
 90             printf("%d %d\n", n, 0);
 91             printf("%d %d\n", 0, m);
 92         } else if(tmp == 1) {
 93             printf("%d %d\n", 0, 0);
 94             printf("%d %d\n", n, m);
 95             printf("%d %d\n", 0, m);
 96             printf("%d %d\n", n, 0);
 97         } else if(tmp == 3) {
 98             printf("%d %d\n", 1, m);
 99             printf("%d %d\n", n, 0);
100             printf("%d %d\n", 0, m);
101             printf("%d %d\n", n-1, 0);
102         } else {
103             printf("%d %d\n", n, m-1);
104             printf("%d %d\n", 0, 0);
105             printf("%d %d\n", n, m);
106             printf("%d %d\n", 0, 1);
107         }
108     }
109     return 0;
110 }
View Code

C题:有n种卡片,每种m张,魔术师每次从中选取n张然后给观众选取,自己再从中选出一张,问最后选得的和观众相同的概率是多少?

分析:由于最后选得的相同的卡片肯定是n种中一种,而且是哪种不重要,这样只需考虑,该种卡片在选出的n张牌占多少?

选出卡片中该种有i张,然后最后魔术师和观众选中该种卡片,这样概率就是:C(m,i)*C((n-1)m, n-i)*(i/n)^2/C(nm,n) 1<=i<=min(n, m)

由于对应n种卡片都是上面这样计算的,所以上面结果*n就是最后结果了。

最后计算时候可以用log这样乘除法转化为+,-,对于概率计算很方便,对结果取一下e^ans放就可以了。

 

 1 //Template updates date: 20140718
 2 #include <iostream>
 3 #include <sstream>
 4 #include <cstdio>
 5 #include <climits>
 6 #include <ctime>
 7 #include <cctype>
 8 #include <cstring>
 9 #include <cstdlib>
10 #include <string>
11 #include <stack>
12 #include <set>
13 #include <map>
14 #include <cmath>
15 #include <vector>
16 #include <queue>
17 #include <algorithm>
18 #define  esp 1e-6
19 #define  inf 0x3f3f3f3f
20 #define  pi acos(-1.0)
21 #define  pb push_back
22 #define  lson l, m, rt<<1
23 #define  rson m+1, r, rt<<1|1
24 #define  lowbit(x) (x&(-x))
25 #define  mp(a, b) make_pair((a), (b))
26 #define  bit(k) (1<<(k))
27 #define  iin  freopen("pow.in", "r", stdin);
28 #define  oout freopen("pow.out", "w", stdout);
29 #define  in  freopen("solve_in.txt", "r", stdin);
30 #define  out freopen("solve_out.txt", "w", stdout);
31 #define  bug puts("********))))))");
32 #define  Inout iin oout
33 #define  inout in out
34 
35 #define  SET(a, v) memset(a, (v), sizeof(a))
36 #define  SORT(a)   sort((a).begin(), (a).end())
37 #define  REV(a)    reverse((a).begin(), (a).end())
38 #define  READ(a, n) {REP(i, n) cin>>(a)[i];}
39 #define  REP(i, n) for(int i = 0; i < (n); i++)
40 #define  VREP(i, n, base) for(int i = (n); i >= (base); i--)
41 #define  Rep(i, base, n) for(int i = (base); i < (n); i++)
42 #define  REPS(s, i) for(int i = 0; (s)[i]; i++)
43 #define  pf(x) ((x)*(x))
44 #define  mod(n) ((n))
45 #define  Log(a, b) (log((double)b)/log((double)a))
46 #define Srand() srand((int)time(0))
47 #define random(number) (rand()%number)
48 #define random_range(a, b) (int)(((double)rand()/RAND_MAX)*(b-a) + a)
49 
50 using namespace std;
51 typedef long long  LL;
52 typedef unsigned long long ULL;
53 typedef vector<int> VI;
54 typedef pair<int,int> PII;
55 typedef vector<PII> VII;
56 typedef vector<PII, int> VIII;
57 typedef VI:: iterator IT;
58 typedef map<string, int> Mps;
59 typedef map<int, int> Mpi;
60 typedef map<int, PII> Mpii;
61 typedef map<PII, int> Mpiii;
62 double nCr(int n, int m) {
63     double res  = 0;
64     Rep(i, 1, m+1)
65     res += -log(i)+log(n-i+1);
66     return res;
67 }
68 void solve(int n, int m) {
69     int M = min(n, m);
70     double ans = 0;
71     Rep(i, 1, M+1) {
72         double tmp = 2*(log(i)-log(n))+log(n)+nCr(m, i)+nCr((n-1)*m, n-i)-nCr(n*m, n);
73         ans += exp(tmp);
74     }
75     printf("%.9f\n", ans);
76 }
77 int main() {
78         int n, m;
79     cin>>n>>m;
80     solve(n, m);
81     return 0;
82 }
View Code

D题:有k件衣服,每件必须先后并且连续经过3种操作,洗涤,烘干,折叠,分别由3种机器来完成,其中机器数目为n1,n2,n3,一个机器只能同时对一件衣服进行对应操作。其中衣服完成每种操作的时间为t1,t2,t3.求最后完成所有衣服3种操作的最短时间。

分析:由于每种操作最多可能处理ni件衣服所以第ni+1件衣服和第1件衣服的开始处理时间必须相差ti,根据这个可以推理最终完成时间。

代码:

//Template updates date: 20140718
#include <bits/stdc++.h>
#define  esp 1e-6
#define  inf 0x3f3f3f3f
#define  pi acos(-1.0)
#define  pb push_back
#define  lson l, m, rt<<1
#define  rson m+1, r, rt<<1|1
#define  lowbit(x) (x&(-x))
#define  mp(a, b) make_pair((a), (b))
#define  bit(k) (1<<(k))
#define  iin  freopen("pow.in", "r", stdin);
#define  oout freopen("pow.out", "w", stdout);
#define  in  freopen("solve_in.txt", "r", stdin);
#define  out freopen("solve_out.txt", "w", stdout);
#define  bug puts("********))))))");
#define  Inout iin oout
#define  inout in out

#define  SET(a, v) memset(a, (v), sizeof(a))
#define  SORT(a)   sort((a).begin(), (a).end())
#define  REV(a)    reverse((a).begin(), (a).end())
#define  READ(a, n) {REP(i, n) cin>>(a)[i];}
#define  REP(i, n) for(int i = 0; i < (n); i++)
#define  VREP(i, n, base) for(int i = (n); i >= (base); i--)
#define  Rep(i, base, n) for(int i = (base); i < (n); i++)
#define  REPS(s, i) for(int i = 0; (s)[i]; i++)
#define  pf(x) ((x)*(x))
#define  mod(n) ((n))
#define  Log(a, b) (log((double)b)/log((double)a))
#define Srand() srand((int)time(0))
#define random(number) (rand()%number)
#define random_range(a, b) (int)(((double)rand()/RAND_MAX)*(b-a) + a)

using namespace std;
typedef long long  LL;
typedef unsigned long long ULL;
typedef vector<int> VI;
typedef pair<int,int> PII;
typedef vector<PII> VII;
typedef vector<PII, int> VIII;
typedef VI:: iterator IT;
typedef map<string, int> Mps;
typedef map<int, int> Mpi;
typedef map<int, PII> Mpii;
typedef map<PII, int> Mpiii;
int n, n1, n2, n3, t1, t2, t3;
const int maxn = 10000 + 100;

int w[maxn];
int main() {
    
    scanf("%d%d%d%d%d%d%d", &n, &n1, &n2, &n3, &t1, &t2, &t3);
    Rep(i, 1, n+1) {
        int c = 0;
        if(i > n1) c = max(c, w[i-n1]+t1);
        if(i > n2) c = max(c, w[i-n2]+t2);
        if(i > n3) c = max(c, w[i-n3]+t3);
        w[i] = c;
        if(i == n)
            cout<<c+t1+t2+t3<<endl;
    }
    return 0;
}
View Code

 

 

E题:给定3个串s1,s2,s3,对每一个l(1<=l<=min(|s1|,|s2|,|s3|))求三元组(i,j,k)的个数,三元组是指满足

s1[i,i+l-1], s2[j,j+l-1],s3[k,k+l-1]是完全相同字符串的条件。

分析:表示知道用后缀数组处理,然后就不知道怎么做了,看了题解还是有点不明白,先留个坑,

F题:给定一个数组a[1...n],为1....n的数的排列, n<=300000,是否存在两个数a,b,a+b/2在这数组中位于这两个数之间。实际就是判断是否三个数构成等差数列。

分析:这题要用线段树+hash来维护,首先容易知道,a,b,c构成等差那么 a,b之差与b,c之差是相等的,那么过程是这样的依次每次取出一个数a[i],然后把a[i]和n-a[i]+1插入到两棵线段树中;如果不存在两个数与a[i]构成等差数列,例如数组中10个元素,对于2,5,8,5不能和2,8构成等差,2,8在数组中位置要么在5前面,要么在5后面,如果2,8在前面,那么将2,8以及10-2+1 = 9,10-8+1=3插入后,两棵线段树相应位置均会被增加相同元素,这样对应的线段树就应该都是序列2...8,那么比较两棵线段树相应区间hash值就可以了。同样对于2,8出现在5后面也可以判断。

一旦遇到hash值不同的情况说明存在等差数列。

代码:

 

  1 //Template updates date: 20140718
  2 #include <bits/stdc++.h>
  3 #define  esp 1e-6
  4 #define  inf 0x3f3f3f3f
  5 #define  pi acos(-1.0)
  6 #define  pb push_back
  7 #define  lson l, m, rt<<1
  8 #define  rson m+1, r, rt<<1|1
  9 #define  lowbit(x) (x&(-x))
 10 #define  mp(a, b) make_pair((a), (b))
 11 #define  bit(k) (1<<(k))
 12 #define  iin  freopen("pow.in", "r", stdin);
 13 #define  oout freopen("pow.out", "w", stdout);
 14 #define  in  freopen("solve_in.txt", "r", stdin);
 15 #define  out freopen("solve_out.txt", "w", stdout);
 16 #define  bug puts("********))))))");
 17 #define  Inout iin oout
 18 #define  inout in out
 19 
 20 #define  SET(a, v) memset(a, (v), sizeof(a))
 21 #define  SORT(a)   sort((a).begin(), (a).end())
 22 #define  REV(a)    reverse((a).begin(), (a).end())
 23 #define  READ(a, n) {REP(i, n) cin>>(a)[i];}
 24 #define  REP(i, n) for(int i = 0; i < (n); i++)
 25 #define  VREP(i, n, base) for(int i = (n); i >= (base); i--)
 26 #define  Rep(i, base, n) for(int i = (base); i < (n); i++)
 27 #define  REPS(s, i) for(int i = 0; (s)[i]; i++)
 28 #define  pf(x) ((x)*(x))
 29 #define  mod(n) ((n))
 30 #define  Log(a, b) (log((double)b)/log((double)a))
 31 #define Srand() srand((int)time(0))
 32 #define random(number) (rand()%number)
 33 #define random_range(a, b) (int)(((double)rand()/RAND_MAX)*(b-a) + a)
 34 
 35 using namespace std;
 36 typedef long long  LL;
 37 typedef unsigned long long ULL;
 38 typedef vector<int> VI;
 39 typedef pair<int,int> PII;
 40 typedef vector<PII> VII;
 41 typedef vector<PII, int> VIII;
 42 typedef VI:: iterator IT;
 43 typedef map<string, int> Mps;
 44 typedef map<int, int> Mpi;
 45 typedef map<int, PII> Mpii;
 46 typedef map<PII, int> Mpiii;
 47 
 48 const int maxn = 300000 + 100;
 49 const int L = 100003;
 50 
 51 LL b[maxn];
 52 
 53 int n;
 54 int a[maxn];
 55 LL ans;
 56 struct SegTree {
 57     LL h[maxn<<2];
 58     void build(int l, int r, int rt) {
 59         if(l == r) {
 60             h[rt] = 0;
 61             return;
 62         }
 63         int m = (l+r)>>1;
 64         build(lson);
 65         build(rson);
 66     }
 67     void PushUp(int l, int r, int rt) {
 68         int m = (l+r)>>1;
 69         int ll = r-m;
 70         h[rt] = h[rt<<1]*b[ll]+h[rt<<1|1];
 71     }
 72     void update(int l, int r, int rt, int pos) {
 73         if(pos == l && pos == r) {
 74             h[rt] = b[1];
 75             return;
 76         }
 77         int m = (l+r)>>1;
 78         if(pos <= m)
 79             update(lson, pos);
 80         else update(rson, pos);
 81         PushUp(l, r, rt);
 82     }
 83     void query(int L, int R, int l, int r, int rt) {
 84         if(L > R)
 85             return;
 86         if(L <= l && R >= r) {
 87             ans = ans*b[r-l+1]+h[rt];
 88             return;
 89         }
 90         int m = (l+r)>>1;
 91         if(L <= m)
 92             query(L, R, lson);
 93         if(R > m)
 94             query(L, R, rson);
 95     }
 96 } t1, t2;
 97 int main() {
 98 
 99     scanf("%d", &n);
100     b[0] = 1;
101     Rep(i, 1, n+1) {
102         scanf("%d", a+i);
103         b[i] = b[i-1]*L;
104     }
105     t1.build(1, n, 1);
106     t2.build(1, n, 1);
107     Rep(i, 1, n+1) {
108         int v = a[i];
109         int l = min(v-1, n-v);
110         ans = 0;
111         t1.query(v-l, v-1, 1, n, 1);
112         LL tmp = ans;
113         ans = 0;
114         t2.query(n-v-l+1, n-v, 1, n, 1);
115         if(tmp != ans) {
116             puts("YES");
117             return 0;
118         }
119         t1.update(1, n, 1, v);
120         t2.update(1, n, 1, n-v+1);
121     }
122     puts("NO");
123     return 0;
124 }
View Code

 

斗鱼直播间弹幕爬虫实战:WebSocket连接与实时数据采集 在数据驱动的时代,直播平台的弹幕数据蕴含着巨大的价值——用户行为分析、舆情监控、弹幕情感分析、直播热度评估等应用场景层出不穷。斗鱼作为国内领先的直播平台,其弹幕系统基于WebSocket协议实现实时双向通信。本文将带您从零开始,使用Python构建一个完整的斗鱼直播间弹幕爬虫系统。 阅读详情

相关推荐

PAM4信号测试实战:从眼图分析到误码率测量的技术演进

在高速数字系统设计中,信号完整性测试是确保数据传输可靠性的核心环节。其基本原理在于通过时域和频域分析,精确评估信号在传输过程中的质量衰减与失真。随着数据速率向56Gbps及以上演进,传统的NRZ编码面临带宽瓶颈,而PAM4调制技术通过在每个符号周期内承载更多比特信息,成为提升信道效率的关键路径。这项技术的工程价值在于,它允许在相同带宽下实现翻倍的数据吞吐量,这对于数据中心互联、PCIe 6.0及800G以太网等高速接口至关重要。然而,PAM4信号电平间距更小,对噪声和抖动极为敏感,导致其原始误码率显著升高,

weixin_42522817的博客 657

MemSQL Start[c]UP 2.0 - Round 2 - Online Round D. Bingo!

D. Bingo! 题解见此:https://blog.csdn.net/v5zsq/article/details/79010405 另: 由于幂次太高,因此取对数后做处理 c++中 log(x) 表示的是 ln(x) 最后再取e指数 exp(x) #include<bits/stdc++.h> using namespace std; typedef long d...

nflsjxc的博客 313

Memory SystemsCache, DRAM, Disk翻译学习DRAM部分(二)

DRAM 的发展史

qq_33473931的博客 995

MemSQL Start[c]UP 2.0 - Round 1 C. Magic Trick

首先,我们先假设有抽出的牌样式为A

Mr.Phoebe的专栏 863

Oracle 11g版本下载及安装超详细教程图解

新手Oracle安装教程

weixin_43738344的博客 10万+

西门子博图指令(定时器操作三)

西门子博图定时器中复位定时器功能指令介绍

yue008的博客 8873

MemSQL Start[c]UP 2.0 - Round 1 .A

A. Eevee time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are solving the crossword problem K from IPSC 2

在风雨中奔跑 708

三维重建笔记_光束平差法(Bundle Adjustment, BA)

目录 1 光束平差法(Bundle Adjustment, BA) 1.1 SFM (Structure‐from‐Motion) 定义 问题描述 1.2 重投影误差 (Reprojection Error) 目标函数 1.3 使用 Levenberg‐Marquardt Algorithm 进行优化 问题描述 简化目标函数 参考 Gauss‐Newton Method ...

惊鸿一博 2万+

MemSQL Start[c]UP 2.0 - Round 1A(构造)

题目链接:http://codeforces.com/problemset/problem/452/A 解题思路: 打个表暴力查找匹配。 完整代码: #include #include #include #include #include #include #include using namespace std; typedef long long LL

代码艺术的道与术 889

从零构建简历智能匹配系统:AI技术助力高效招聘

本文详细介绍了简历智能匹配系统的开发过程,从数据收集、预处理、特征提取到模型匹配和结果展示,每一步都提供了详细的代码实例。通过使用TF-IDF、Word2Vec和BERT等技术,我们能够有效地将求职者的简历与职位描述进行匹配,从而提高招聘效率。未来,随着自然语言处理技术的进一步发展,简历智能匹配系统将变得更加智能和高效,为企业和求职者提供更好的服务。

理论都是虚的,代码才是王道。 309

基于深度学习的生活垃圾检测与分类系统:YOLOv5、YOLOv6、YOLOv7与YOLOv8实现

本项目的目标是开发一个基于YOLO系列模型的生活垃圾检测与分类系统。数据集准备与标注:收集并标注生活垃圾图像数据集。模型训练:使用YOLOv5、YOLOv6、YOLOv7、YOLOv8等深度学习模型训练垃圾分类系统。UI界面设计:设计一个简洁的用户界面,支持图像或视频的上传与垃圾分类结果展示。实时垃圾检测与分类:通过摄像头进行实时垃圾检测和分类。结果展示与保存:展示检测结果,支持用户保存分类后的图像或视频。

YOLO 705

CF MemSQL Start[c]UP 2.0 - Round 1 D

D. Washer, Dryer, Folder time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You have k pieces of laundry, each

勿忘初衷 1750

在 SAP 里玩转 FTP:标准程序 RSFTP00x 全景解析与落地实践

摘要:SAP系统通过封装的标准FTP程序(RSFTP001-008)提供便捷的文件传输能力,适用于各类集成场景。关键点包括:1)依赖SAPFTP可执行程序和RFC目的地;2)使用RSFTP005进行前置检查并生成RFC配置;3)标准报表各司其职,如RSFTP002用于命令测试、RSFTP007/008提供参考实现;4)开发时组合FTP_CONNECT/COMMAND/DISCONNECT等函数模块。特别注意前台(SAPFTP)与后台(SAPFTPA)的环境差异,这是常见故障点。该方案通过标准化工具链显著降低

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 210

MemSQL Start[c]UP 2.0 - Round 1E. Three strings

题意:给3个字符串,问从1到min(l1,l2,l3)的长度的子串,找到从该位置长度为l,三个子串相同的三元组的个数 题解:把3个子串用分隔符串起来.然后分开统计每个节点在三个串中出现次数.最后乘起来就是该节点表示的三元组个数,然后l[fa[i]]+1到l[i]有贡献,对l差分一下就好了 //#pragma GCC optimize(2) //#pragma GCC optimize(3) //#...

weixin_30548917的博客 143

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Codeforces MemSQL Start[c]UP 2.0 - Round 1

http://codeforces.com/contest/452 这场上午花了一会做了下,AD 是 1Y,还算比较简单,B 因为特判一维的情况写错了挂了一发。。话说回来这种情况样例就有啊为什么不看看(。。 。C 因为没判断 n, m 的大小的关系 Fail on 8 了(比赛的时候就是妥妥的过 pretest 然后 FST),E 想半天不会,F 想半天不会 = =。 A、水

467

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

codeforces MemSQL Start[c]UP 2.0 - Round 1 A. Eevee

又一次与暴涨rating失之交臂 忘了判断字符串的cha

小华在努力~ 576

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

MemSQL Start[c]UP 2.0 - Round 1 D. Washer, Dryer, FoldercO

Codeforces

Mr.Phoebe的专栏 964

codeforces MemSQL Start[c]UP 2.0 - Round 1 B. 4-point polyline

其实这是一道很简单的题

小华在努力~ 778

[Hash] Codeforces 452F MemSQL Start[c]UP 2.0 - Round 1 F. Permutation

从左往右扫 对于当前的某个aia_i 我们只判断ai+ka_i+k和ai−ka_i-k是不是都出现过或都没出现过 要是只有一个出现 那么肯定另一个在后面 不合法 对于出现情况我们hash下 可以用线段树或树状数组维护 为什么我这么长#include<cstdio> #include<cstdlib> #include<algorithm> using namespace std; typede

雯舞 858

MemSQL Start[c]UP 3.0 - Round 2 and Codeforces Round #437 (Div. 1) D. Buy Low Sell High

假如用i->j (i < j) 表示在i天买j天卖 那么i->k + k->j (i < k < j ) 与 上面的费用是一样的 因此这个最优解可以On算出来用一个小顶堆表示之前可以选择购买的物品 假设之前最小的可以在今天卖例如 第2天的可以在第4天卖赚到差价 当遍历到第5天时发现可以以第四天的价格买入赚到差价 这时候就可以把第2天和第4天的都拿来卖而第2天买入第5天卖的价值就等于原先第

sb的博客 518

MemSQL Start[c]UP 2.0 - Round 1 F - Permutation 思维+线段树维护hash值

F - Permutation 思路:对于当前的值x, 只需要知道x + k, x - k这两个值是否出现在其左右两侧,又因为每个值只有一个, 所以可以转换成,x+k, x-k在到x所在位置的时候是否都出现,或者都不出现,即出现情况相等,我们可以 用线段树维护hash值的方式来判断所有x+k, x-k的出现情况是否都一样。 #include<bits/stdc++.h...

161

MemSQL Start[c]UP 2.0 - Round 1 E - Three strings 广义后缀自动机

E - Three strings 将三个串加进去,看每个节点在三个串中分别出现了多少次。 #include<bits/stdc++.h> #define LL long long #define fi first #define se second #define mk make_pair #define PII pair<int, int> ...

677

MemSQL Start[c]UP 2.0 Round 1 F.Permutation,[BZOJ2124]等差子序列(分治)

简化题意   (范围照CF上的给,BZOJ需要多组数据T≤7T≤7T\leq7)给定一个长度为n(n≤3e5)n(n≤3e5)n(n\leq3e5)的排列,问你这个排列中是否存在i,j,k(1≤i&lt;j&lt;k≤n)i,j,k(1≤i&lt;j&lt;k≤n)i,j,k(1\leq ip[j]+p[j]=p[i]+p[k]p[j]+p[j]=p[i]+p[k]p[j]+p[j]=p[...

Ephemeral 403

MemSQL Start[c]UP 3.0 - Round 2 and Codeforces Round #437 (Div. 1) B. Ordering Pizza

首先全买B 然后考虑能不能把部分替换A提升总价值那么肯定考虑替换ai>bi的 先排个序 对于多出的披萨块ai bi是无影响的额外加入一部分ai bi 为0的数据对于每一个人 要不然就是全部替换为A最优 要不然就是尽量不要替换 所以对每个人都用尽量替换多的A和尽量替换少的A更新一下 #include <iostream> #include <algorithm> #include <sstre

sb的博客 540

MemSQL Start[c]UP 2.0 - Round 1 B. 4-point polyline (线段的 枚举)

昨天cf做的不好,居然挂零了,还是1点开始的呢。,,, a题少了一个条件,没判断长度。 写一下B题吧 题目链接 题意: 给出(n, m),可以得到一个矩形 让你依次连接矩形内的4个点使它们的长度和最长,而这三条线段可以相交、交叉 分析:这种情况下,枚举对角线的四个点,当时我也想过,我只用了其中的一种 方式,其实有四种方式判断,好像没什么道理。 上图吧: 转载于:h...

weixin_30437481的博客 122
上一篇: HDOJ 4893 Wow! Such Sequence!
下一篇: HDOJ多校联合第六场
rootial
博客等级 码龄15年 2粉丝 93原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值