oj

JZ高中OJ 6274. [NOIP提高组模拟1]梦境

安稳与你 提交于 2019-11-26 08:45:16
input: dream.in output: dream.out Time Limits: 1000 ms Memory Limits: 262144 KB Detailed Limits Description Input Output Sample Input 2 2 1 3 2 4 1 3 Sample Output 2 Data Constraint Hint 1 #include<bits/stdc++.h> 2 using namespace std; 3 struct A 4 { 5 long l,r; 6 bool operator < (A w) const 7 { 8 return r>w.r; 9 } 10 }b[200010]; 11 priority_queue<A>q; 12 long n,m,a[200010],now=1,tot=0,ans=0; 13 bool ss (A t1,A t2) 14 { 15 return t1.l<t2.l; 16 } 17 int main() 18 { 19 freopen("dream.in","r",stdin); 20 freopen("dream.out","w",stdout); 21 scanf("%ld %ld",&n,&m); 22 for(int i=1;i<=n;i++) scanf("

JZ高中OJ 6275. [NOIP提高组模拟1]小L的数列

一曲冷凌霜 提交于 2019-11-26 08:28:54
input: seq.in output: seq.out Time Limits: 1500 ms Memory Limits: 524288 KB Detailed Limits Description Input 一行两个整数n和k。 之后1行k个正整数b1...bk。 之后1行k个正整数f1...fk。 Output 输出一个整数表示fn Sample Input 【样例输入1】 5 4 1 2 3 4 4 3 2 1 【样例输入2】 100000 4 1 2 3 4 12 23 34 45 Sample Output 【样例输出1】 27648 样例输出2】 33508797 Data Constraint 对于30%的数据,n≤10000. 对于另外20%的数据,bi=1,n≤1000000. 对于另外20%的数据,f[1]...f[k-1]=1. 对于另外20%的数据,k≤30. 对于100%的数据,1≤k≤200,1≤n≤40000000,1≤bi,fi≤998244352. Hint 样例解释:1*2*2*3*3*3*4*4*4*4=27648 1 #include <bits/stdc++.h> 2 #define mod 998244353 3 #define ll long long 4 ll n, k; 5 ll b[205], f[1000005]; 6

搞懂深度学习到底需要哪些数学知识

蓝咒 提交于 2019-11-26 05:29:47
IT互联网行业有个有趣现象,玩资本的人、玩产品的人、玩技术的人都能很好的在这个行业找到自己的位置并取得成功,而且可以只懂其中一样,不需要懂其余两样。玩技术的人是里面最难做的,也是三者收益最低的,永远都要不停学习,不停把画饼变成煎饼。 在今年5月底,Alphago又战胜了围棋世界冠军柯洁,AI再次呈现燎原之势席卷科技行业,吸引了众多架构师对这个领域技术发展的持续关注和学习,思考AI如何做工程化,如何把我们系统的应用架构、中间件分布式架构、大数据架构跟AI相结合,面向什么样的应用场景落地,对未来做好技术上的规划和布局。 之前发表过一篇文章 《如何用70行Java代码实现深度神经网络算法》 (点击「阅读原文」获得文章),记录了深度神经网络的计算过程和程序实现,本文再进一步研究一下背后的数学原理。 为了彻底理解深度学习,我们到底需要掌握哪些数学知识呢?经常看到会列出一系列数学科目:微积分、线性代数、概率论、复变函数、数值计算等等。这些数学知识有相关性,但实际上这是一个最大化的知识范围,学习成本会非常久,本文尝试归纳理解深度学习所需要的最小化数学知识和推导过程。 (以下根据作者的学习理解整理,有误之处,欢迎专家学者提出指导批评)。 多层神经网络的函数构成关系 多层神经网络从输入层,跨多个隐含层,到最后输出层计算误差,从数学上可以看做一系列函数的嵌套组合而成,上一层函数输出做为下一层函数输入

JZ高中OJ 1386. 排序

僤鯓⒐⒋嵵緔 提交于 2019-11-26 04:32:29
Time Limits: 1000 ms Memory Limits: 65536 KB Detailed Limits Description   你收到一项对数组进行排序的任务,数组中是1到N个一个排列。你突然想出以下一种特别的排序方法,分为以下N个阶段:   •阶段1,把数字1通过每次交换相邻两个数移到位置1;   •阶段2,用同样的方法把N移到位置N;   •阶段3,把数字2移到位置2处;   •阶段4,把数字N-1移到位置N-1处;   •依此类推。   换句话说,如果当前阶段为奇数,则把最小的未操作的数移到正确位置上,如果阶段为偶数,则把最大的未操作的数移到正确位置上。   写一个程序,给出初始的排列情况,计算每一阶段交换的次数。 Input   第一行包含一个整数N(1<=N<=100000),表示数组中元素的个数。   接下来N行每行一个整数描述初始的排列情况。 Output   输出每一阶段的交换次数。 Sample Input 输入1: 3 2 1 3 输入2: 5 5 4 3 2 1 输出3: 7 5 4 3 7 1 2 6 Sample Output 输出1: 1 0 0 输出2: 4 3 2 1 0 输出3: 4 2 3 0 2 1 0 Data Constraint Hint 【数据范围】   70%的数据N<=100 1 #include<bits