Day2上午解题报告
预计分数:100+0+60=160
实际分数:100+0+60=160
mmpT1数据错了。。。
T1遭遇
题目描述
你是能看到第一题的 friends呢。
—— hja
?座楼房,立于城中 。
第?座楼,高度 ℎ?。
你需要一开始选择座楼,跳。 在第 ?座楼准备跳需要 ??的花费。 每次可以跳到任何一个还没有过的楼上去。但是代价,另外一座楼的代价是两高度差绝对值 ,最后一次从楼上跳到地面不需 要代价(只能跳到地上一次)。为在不超过 要代价(只能跳到地上一次)。为在不超过 ?的情况下,最多跳几次楼。 (一座楼 只能 跳一次 ,且每次 跳楼 都要 计算 准备 的花费 )
输入输出格式
输入格式:
第一行个整数 ?,代表 楼的数量。
接下来一行 ?个整数代表 ??。
接下来一行 ?个整数代表 ℎ?。
最后一行个整数 ?。
输出格式:
一行个整数 代表答案 。
输入输出样例
说明
对于 30%的数据, 1≤?≤5。
对于另外 20%的数据,所有 ℎ?相同。
对于另外 20%的数据, ??=0。
P104 zhx 遭遇
第 3 页 共 6 页
对于 100%的数据, 1≤?≤50,1≤??,ℎ?≤106,1≤?≤107。
不会做,不过70分的算法貌似比较好想
但是h相等的情况貌似写炸了,。。。
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<cmath>
- #include<algorithm>
- #include<ctime>
- using namespace std;
- const int MAXN=;
- const int INF=0x7ffff;
- inline int read()
- {
- char c=getchar();int flag=,x=;
- while(c<''||c>'') {if(c=='-') flag=-;c=getchar();}
- while(c>=''&&c<='') x=x*+c-,c=getchar();return x*flag;
- }
- int n,bg;//kashi
- struct node
- {
- int c;
- int h;
- }a[MAXN];
- int comp(const node &a,const node &b)
- {
- return a.c<b.c;
- }
- int comp2(const node &a,const node &b)
- {
- return a.h<b.h;
- }
- int ans=;
- int vis[MAXN];
- int T;
- int dfs(int now,int spend,int have)
- {
- ans=max(ans,have);
- for(int i=;i<=n;i++)
- {
- if(vis[i]==&&spend+a[i].c+abs(a[now].h-a[i].h)<=T)
- {
- if(clock()-bg>=)
- {
- printf("%d",ans);
- exit();
- }
- vis[i]=;
- dfs(i,spend+a[i].c+abs(a[now].h-a[i].h),have+);
- vis[i]=;
- }
- }
- }
- int flagh=;//高度是否相同
- int flagc=;//花费是否都为0
- inline void solvec()//花费都为0
- {
- sort(a+,a+n+,comp2);
- for(int i=;i<=n;i++)//从每一个点往后跳
- {
- int nowjump=;
- int nowspend=;
- for(int j=i+;j<=n;j++)
- {
- if(abs(a[j].h-a[j-].h)+nowspend<=T)
- {
- nowspend=abs(a[j].h-a[j-].h)+nowspend;
- nowjump+=;
- }
- ans=max(ans,nowjump+);
- }
- }
- }
- inline void solveh()
- {
- int nowjump=;
- int nowspend=-;
- if(a[].c<=T)
- {
- nowspend=a[].c;
- for(int i=;i<=n;i++)
- if(nowspend+a[i].c<=T)
- nowjump++,nowspend+=a[i].c;
- }
- if(nowspend!=-) ans=max(ans,nowjump+);
- }
- int main()
- {
- // freopen("meet.in","r",stdin);
- // freopen("meet.out","w",stdout);
- bg=clock();
- n=read();
- for(int i=;i<=n;i++) a[i].c=read();
- for(int i=;i<=n;i++) a[i].h=read();
- T=read();
- sort(a+,a+n+,comp);
- for(int i=;i<=n;i++)
- if(a[i].c!=) flagc=;
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- if(a[i].h!=a[j].h&&i!=j)
- flagh=;
- if(flagc) solvec();
- if(flagh) solveh();
- for(int i=;i<=n;i++)
- if(a[i].c<=T)
- vis[i]=,dfs(i,a[i].c,);
- printf("%d",ans);
- return ;
- }
莫名其妙丢20分
正解:
1(by myl)
考虑跳楼的集合
一定会有∑Ci
按照高度排序
高度差的代价==h5-h1
枚举最矮的楼,最高的楼
按照C排序,一个一个的选
总花费Hj-Hi+Ci+Cj+∑选出来的Ci<=T的最大值
复杂度:$O(N^3logN)$
2(by zhx)
dp
按照从低向高排序
$f[i][j]$表示停留在i,已经跳了j栋楼,的最小花费
枚举下一次跳哪栋楼
$f[k][i+1]=min( f[k][j+1],f[i][j]+C[k]+abs(hk-hi) )$
复杂度:$O(n^3)$
统计答案的时候枚举i,j观察是否<=T
- #include <vector>
- #include <list>
- #include <map>
- #include <set>
- #include <queue>
- #include <deque>
- #include <stack>
- #include <bitset>
- #include <algorithm>
- #include <functional>
- #include <numeric>
- #include <utility>
- #include <sstream>
- #include <iostream>
- #include <iomanip>
- #include <cstdio>
- #include <cmath>
- #include <cstdlib>
- #include <ctime>
- #include<cstring>
- using namespace std;
- int f[][];
- struct rec
- {
- int d,t;
- rec(){}
- rec(int a,int b)
- {
- d=a;t=b;
- }
- bool operator<(const rec &a)const
- {
- return t<a.t;
- }
- }z[];
- class GUMIAndSongsDiv1 {
- public:
- int maxSongs(vector <int> duration, vector <int> tone, int T) {
- int n=duration.size();
- for (int a=;a<n;a++)
- z[a]=rec(duration[a],tone[a]);
- sort(z,z+n);
- memset(f,0x3f,sizeof(f));
- f[][]=;
- f[][]=z[].d;
- for (int a=;a<n;a++)
- for (int b=;b<=a+;b++)
- if (!b) f[a][b]=;
- else
- {
- for (int c=;c<a;c++)
- f[a][b]=min(f[a][b],f[c][b-]+z[a].d+(b== ? : z[a].t-z[c].t));
- }
- int ans=;
- for (int a=;a<n;a++)
- for (int b=;b<=n;b++)
- if (f[a][b]<=T) ans=max(ans,b);
- return ans;
- }
- };
- //<%:testing-code%>
- //Powered by KawigiEdit 2.1.4 (beta) modified by pivanof!
- // BEGIN KAWIGIEDIT TESTING
- // Generated by KawigiEdit 2.1.4 (beta) modified by pivanof
- bool KawigiEdit_RunTest(int testNum, vector <int> p0, vector <int> p1, int p2, bool hasAnswer, int p3) {
- cout << "Test " << testNum << ": [" << "{";
- for (int i = ; int(p0.size()) > i; ++i) {
- if (i > ) {
- cout << ",";
- }
- cout << p0[i];
- }
- cout << "}" << "," << "{";
- for (int i = ; int(p1.size()) > i; ++i) {
- if (i > ) {
- cout << ",";
- }
- cout << p1[i];
- }
- cout << "}" << "," << p2;
- cout << "]" << endl;
- GUMIAndSongsDiv1 *obj;
- int answer;
- obj = new GUMIAndSongsDiv1();
- clock_t startTime = clock();
- answer = obj->maxSongs(p0, p1, p2);
- clock_t endTime = clock();
- delete obj;
- bool res;
- res = true;
- cout << "Time: " << double(endTime - startTime) / CLOCKS_PER_SEC << " seconds" << endl;
- if (hasAnswer) {
- cout << "Desired answer:" << endl;
- cout << "\t" << p3 << endl;
- }
- cout << "Your answer:" << endl;
- cout << "\t" << answer << endl;
- if (hasAnswer) {
- res = answer == p3;
- }
- if (!res) {
- cout << "DOESN'T MATCH!!!!" << endl;
- } else if (double(endTime - startTime) / CLOCKS_PER_SEC >= ) {
- cout << "FAIL the timeout" << endl;
- res = false;
- } else if (hasAnswer) {
- cout << "Match :-)" << endl;
- } else {
- cout << "OK, but is it right?" << endl;
- }
- cout << "" << endl;
- return res;
- }
- int main() {
- freopen("meet.in","r",stdin);
- freopen("meet.out","w",stdout);
- vector<int> duration;
- vector<int> tone;
- int n,T;
- scanf("%d",&n);
- for (int a=;a<=n;a++)
- {
- int v;
- scanf("%d",&v);
- duration.push_back(v);
- }
- for (int a=;a<=n;a++)
- {
- int v;
- scanf("%d",&v);
- tone.push_back(v);
- }
- scanf("%d",&T);
- GUMIAndSongsDiv1 *obj;
- int answer;
- obj = new GUMIAndSongsDiv1();
- answer = obj->maxSongs(duration, tone, T);
- printf("%d\n",answer);
- /*bool all_right;
- all_right = true;
- vector <int> p0;
- vector <int> p1;
- int p2;
- int p3;
- {
- // ----- test 0 -----
- int t0[] = {3,5,4,11};
- p0.assign(t0, t0 + sizeof(t0) / sizeof(t0[0]));
- int t1[] = {2,1,3,1};
- p1.assign(t1, t1 + sizeof(t1) / sizeof(t1[0]));
- p2 = 17;
- p3 = 3;
- all_right = KawigiEdit_RunTest(0, p0, p1, p2, true, p3) && all_right;
- // ------------------
- }
- {
- // ----- test 1 -----
- int t0[] = {100,200,300};
- p0.assign(t0, t0 + sizeof(t0) / sizeof(t0[0]));
- int t1[] = {1,2,3};
- p1.assign(t1, t1 + sizeof(t1) / sizeof(t1[0]));
- p2 = 99;
- p3 = 0;
- all_right = KawigiEdit_RunTest(1, p0, p1, p2, true, p3) && all_right;
- // ------------------
- }
- {
- // ----- test 2 -----
- int t0[] = {1,2,3,4};
- p0.assign(t0, t0 + sizeof(t0) / sizeof(t0[0]));
- int t1[] = {1,1,1,1};
- p1.assign(t1, t1 + sizeof(t1) / sizeof(t1[0]));
- p2 = 100;
- p3 = 4;
- all_right = KawigiEdit_RunTest(2, p0, p1, p2, true, p3) && all_right;
- // ------------------
- }
- {
- // ----- test 3 -----
- int t0[] = {9,11,13,17};
- p0.assign(t0, t0 + sizeof(t0) / sizeof(t0[0]));
- int t1[] = {2,1,3,4};
- p1.assign(t1, t1 + sizeof(t1) / sizeof(t1[0]));
- p2 = 20;
- p3 = 1;
- all_right = KawigiEdit_RunTest(3, p0, p1, p2, true, p3) && all_right;
- // ------------------
- }
- {
- // ----- test 4 -----
- int t0[] = {87,21,20,73,97,57,12,80,86,97,98,85,41,12,89,15,41,17,68,37,21,1,9,65,4,67,38,91,46,82,7,98,21,70,99,41,21,65,11,1,8,12,77,62,52,69,56,33,98,97};
- p0.assign(t0, t0 + sizeof(t0) / sizeof(t0[0]));
- int t1[] = {88,27,89,2,96,32,4,93,89,50,58,70,15,48,31,2,27,20,31,3,23,86,69,12,59,61,85,67,77,34,29,3,75,42,50,37,56,45,51,68,89,17,4,47,9,14,29,59,43,3};
- p1.assign(t1, t1 + sizeof(t1) / sizeof(t1[0]));
- p2 = 212;
- p3 = 12;
- all_right = KawigiEdit_RunTest(4, p0, p1, p2, true, p3) && all_right;
- // ------------------
- }
- if (all_right) {
- cout << "You're a stud (at least on the example cases)!" << endl;
- } else {
- cout << "Some of the test cases had errors." << endl;
- }
- return 0;*/
- }
- // END KAWIGIEDIT TESTING
鬼畜的正解
T2都市
题目描述
你是能看到第二题的 friends呢。
—— laekov
塔立于都市, 攀登上塔,能够到达更远的地方。但是需要破解谜 题。仍然有 ?个数,但并不给你 而是了?×?−12个数,代表它们两的 和。那么,这 ?个数是多少呢?
输入输出格式
输入格式:
一行个整数 ?。
接下来一行 ?×?−12个数,代表两之和。
输出格式:
第一行个整数 ?代表解的个数 。
接下来 ?行 ,每行 ,每?个数代表一组解,从小到大排列。的顺序 按照字典个数代表一组解,从小到大排列。的顺序 按照字典个数代表一组解,从小到大排列。的顺序 按照字典从大到小排列。
输入输出样例
说明
对于 30%的数据, 1≤?≤5,?个数均不超过 10。
对于 60%的数据, 1≤?≤50,?个数均不超过 100。
对于 100%的数据, 1≤?≤300,?个数均不超过 108。
不会做,
最后没时间了,连暴力都没打。
正解
先对给出以及枚举的数的数进行排序
设枚举的数为$a_1,a_2$
给出的数为$b_1,b_2$
性质:
a1+a2==b1
a1+a3==b2
设a2+a3=x
枚举a2+a3等于b里面的哪个数
对于所有的ai,都进行这个操作
每次解除a1,a2,a3
时间复杂度:$O(n^4)≈O(n^3)$
- v#include<cstdio>
- #include<cstdlib>
- #include<cstring>
- #include<algorithm>
- using namespace std;
- const int maxn=;
- int n,m,res[maxn],ans[maxn][maxn],z[maxn*maxn],cnt;
- bool use[maxn*maxn];
- void check(int p)
- {
- memset(use,false,sizeof(use));
- if ((z[]+z[]+z[p])&) return;
- res[]=(z[]+z[]+z[p])/-z[p];
- res[]=z[]-res[];
- res[]=z[]-res[];
- use[]=use[]=use[p]=true;
- for (int a=,b=;a<=n;a++)
- {
- while (b<=m && use[b])
- b++;
- if (b>m) return;
- res[a]=z[b]-res[];
- use[b]=true;
- for (int c=;c<a;c++)
- {
- if (res[c]>res[a]) return;
- int v=res[c]+res[a];
- int p=lower_bound(z+,z+m+,v)-z;
- if (z[p]!=v) return;
- int px=p;
- while (px && z[px]==z[p])
- px--;
- px++;
- while (px<=m && z[px]==z[p] && use[px])
- px++;
- if (z[px]!=z[p] || use[px]) return;
- p=px;
- use[p]=true;
- }
- }
- cnt++;
- for (int a=;a<=n;a++)
- ans[cnt][a]=res[a];
- }
- int main()
- {
- freopen("city.in","r",stdin);
- freopen("city.out","w",stdout);
- scanf("%d",&n);
- m=n*(n-)/;
- for (int a=;a<=m;a++)
- scanf("%d",&z[a]);
- sort(z+,z+m+);
- for (int a=;a<=m;)
- {
- check(a);
- int b=a;
- while (b<=m && z[b]==z[a])
- b++;
- a=b;
- }
- printf("%d\n",cnt);
- for (int a=;a<=cnt;a++)
- for (int b=;b<=n;b++)
- {
- printf("%d",ans[a][b]);
- if (b==n) printf("\n");
- else printf(" ");
- }
- return ;
- }
T3街灯
题目描述
你是能看到第三题的 friends呢。
—— aoao
街上的灯亮起,指引向着远方路 街上的灯亮起,指引向着远方路 街上的灯亮起,指引向着远方路 街上的灯亮起,指引向着远方路 街上的灯亮起,指引向着远方路 。每个街灯上都有一数, 每个街灯上都有一数, 每个街灯上都有一数, 每个街灯上都有一数, 每次询问, 每次询问, 第?个街灯到第 ?个街灯上的数模 ?等于 ?的有几个。
输入输出格式
输入格式:
第一行两个数 ?,?,代表街灯的个数 和询问。
接下来一行 ?个数,代表 街灯上的数。
接下来 ?行,每四个数 ?,?,?,?代表一组询问。
输出格式:
对于每次询问,输出一行代表答案 。
输入输出样例
说明
对于 30%的数据, 1≤?,?≤103。
对于另外 30%的 数据,每次询问?一样。
对于 100%的数据, 1≤?,?≤105,街灯上的数不超过 104,1≤?≤109。
30分是暴力
另外30分可以用莫队水。。
但是标程是用链表做的
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<cmath>
- #include<map>
- #include<algorithm>
- using namespace std;
- const int MAXN=1e6;
- const int INF=0x7ffff;
- inline int read()
- {
- char c=getchar();int flag=,x=;
- while(c<''||c>'') {if(c=='-') flag=-;c=getchar();}
- while(c>=''&&c<='') x=x*+c-,c=getchar();return x*flag;
- }
- int n,m;
- int a[MAXN];
- struct node
- {
- int l,r,p,v,id;
- }q[MAXN];
- int out[MAXN];
- int flag=;//p是否都相等
- int ansout=;
- int mod=;
- int base[MAXN];
- //map<int,int>happen;
- int happen[*MAXN*+];
- int comp(const node &a,const node &b)
- {
- if(base[a.l]==base[b.l])
- return base[a.r]<base[b.r];
- else return base[a.l]<base[b.l];
- }
- inline void dele(int pos)
- {
- happen[a[pos]%mod]--;
- }
- inline void add(int pos)
- {
- happen[a[pos]%mod]++;
- }
- inline void modui()
- {
- int ll=,rr=-;
- int now=;
- for(int i=;i<=m;i++)
- {
- while(ll<q[i].l) dele(ll),ll++;
- while(ll>q[i].l) add(ll-),ll--;
- while(rr<q[i].r) add(rr+),rr++;
- while(rr>q[i].r) dele(rr),rr--;
- out[q[i].id]=happen[q[i].v];
- }
- for(int i=;i<=m;i++)
- printf("%d\n",out[i]);
- }
- int main()
- {
- // freopen("light.in","r",stdin);
- // freopen("light.out","w",stdout);
- n=read(),m=read();
- int p=sqrt(n);
- for(int i=;i<=n;i++) base[i]=(i-)/p;
- for(int i=;i<=n;i++) a[i]=read();
- for(int i=;i<=m;i++)
- {
- q[i].l=read();
- q[i].r=read();
- q[i].p=read();
- q[i].v=read();
- q[i].id=i;
- if(i>=&&q[i].p!=q[i-].p) flag=;
- }
- if(flag&&n>=1e3&&m>=1e3)
- {
- sort(q+,q+m+,comp);
- mod=q[].p;
- static map<int,int>happen;
- modui();
- return ;
- }
- for(int i=;i<=m;i++)
- {
- int ans=;
- for(int j=q[i].l;j<=q[i].r;j++)
- if(a[j]%q[i].p==q[i].v)
- ans++;
- printf("%d\n",ans);
- }
- return ;
- }
莫队
30分
暴力
60
把%p的余数扔到vector||链表||某个数据结构中
每次二分出l的位置和r的位置
空间复杂度:$O(N)$
100
对p分块
p<=100对于每一个询问预处理
p>100
考虑a[i]%p==v
的值为v+p.v+kp。。
枚举k,k<=100
- #include <cstdio>
- #include <cstring>
- #include <algorithm>
- using namespace std;
- const int maxn = ;
- const int maxv = ;
- const int bsz = ;
- const int maxb = ;
- int n, m;
- int a[maxn], vb[maxb][maxb], ve[maxb][maxb];
- int xb[maxn], xe[maxn];
- int i_buf[maxn * maxb * ], tib;
- void pre() {
- memset(ve, , sizeof(ve));
- memset(xe, , sizeof(xe));
- for (int i = ; i <= n; ++ i)
- ++ xe[a[i]];
- for (int i = ; i <= maxv; ++ i) {
- xb[i] = tib;
- tib += xe[i];
- xe[i] = xb[i];
- }
- for (int i = ; i <= n; ++ i)
- i_buf[xe[a[i]] ++] = i;
- for (int m = ; m <= bsz; ++ m) {
- for (int i = ; i <= n; ++ i)
- ++ ve[m][a[i] % m];
- for (int i = ; i < m; ++ i) {
- vb[m][i] = tib;
- tib += ve[m][i];
- ve[m][i] = vb[m][i];
- }
- for (int i = ; i <= n; ++ i)
- i_buf[ve[m][a[i] % m] ++] = i;
- }
- }
- int queryb(int l0, int r0, int p, int k) {
- if (vb[p][k] == ve[p][k])
- return ;
- int *x1 = lower_bound(i_buf + vb[p][k], i_buf + ve[p][k], l0);
- int *x2 = upper_bound(i_buf + vb[p][k], i_buf + ve[p][k], r0);
- return x2 - x1;
- }
- int querys(int v, int l0, int r0) {
- if (xb[v] == xe[v])
- return ;
- int *x1 = lower_bound(i_buf + xb[v], i_buf + xe[v], l0);
- int *x2 = upper_bound(i_buf + xb[v], i_buf + xe[v], r0);
- return x2 - x1;
- }
- int querya(int l0, int r0, int p, int k) {
- int ans = ;
- for (int i = k; i <= maxv; i += p)
- ans += querys(i, l0, r0);
- return ans;
- }
- int main() {
- freopen("light.in", "r", stdin);
- freopen("light.out", "w", stdout);
- scanf("%d%d", &n, &m);
- tib = ;
- for (int i = ; i <= n; ++ i)
- scanf("%d", a + i);
- pre();
- while (m --) {
- int l, r, p, k;
- scanf("%d%d%d%d", &l, &r, &p, &k);
- if (p <= bsz)
- printf("%d\n", queryb(l, r, p, k));
- else
- printf("%d\n", querya(l, r, p, k));
- }
- }
正解
Day2上午解题报告的更多相关文章
- 「雅礼集训 2017 Day2」解题报告
「雅礼集训 2017 Day2」水箱 我怎么知道这种题目都能构造树形结构. 根据高度构造一棵树,在树上倍增找到最大的小于约束条件高度的隔板,开一个 \(vector\) 记录一下,然后对于每个 \(v ...
- Day1上午解题报告
预计分数:100+60+0=160 实际分数:100+30+20=150 T1立方数(cubic) 题目描述 LYK定义了一个数叫“立方数”,若一个数可以被写作是一个正整数的3次方,则这个数就是立方数 ...
- Day3上午解题报告
预计分数:100+40+50=190 实际分数:100+40+50=190 T1 https://www.luogu.org/problem/show?pid=T15365 表示从来没做过博弈论的题, ...
- Day2下午解题报告
预计分数:100+100+30=230 实际分数:100+100+30=230人品爆发&&智商爆发&&手感爆发 T3数据好水,,要是把数组开大一点的话还能多得10分,, ...
- Day5上午解题报告
预计分数:100+40+30=170 实际假分数:0+0+0=0 CE*3 实际真分数:60+50+0=110 老师没把我的程序放的文件夹里面,于是..... T1 https://www.luogu ...
- Day4上午解题报告
预计分数:50 +0+0=50 实际分数:50+0+10=60 毒瘤出题人,T3不给暴力分 (*  ̄︿ ̄) T1 https://www.luogu.org/problem/show?pid=T155 ...
- GX/GZOI2019 day2 解题报告
GX/GZOI2019 day2 解题报告 题目链接 逼死强迫症 旅行者 旧词 t1 逼死强迫症 显然地,记 \(f(i)\) 为长度为 \(i\) 的木板的答案,可得: \(\\\) \[f(i)= ...
- 【NOIP2015】提高day2解题报告
题目: P1981跳石头 描述 一年一度的“跳石头”比赛又要开始了!这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 N ...
- 【未完成0.0】Noip2012提高组day2 解题报告
第一次写一套题的解题报告,感觉会比较长.(更新中Loading....):) 题目: 第一题:同余方程 描述 求关于x的同余方程ax ≡ 1 (mod b)的最小正整数解. 格式 输入格式 输入只有一 ...
随机推荐
- Playing With Stones UVALive - 5059 Nim SG函数 打表找规律
Code: #include<cstdio> #include<algorithm> using namespace std; typedef long long ll; ll ...
- Centos7(阿里云服务器)安装Anaconda的详细步骤与心得
在本地安装Anaconda的各个版本的文章已经很多,但是感觉不是很详细,因此,在此发发自己在Centos7(阿里云服务器)安装Anaconda的心得和步骤: 注:需要注意的地方会用不同颜色区别. 1. ...
- 今日SGU 5.27
SGU 122 题意:给你n个人,每个人有大于 N / 2(向上取整)的朋友,问你1这个人有一个书,每个人都想看,只能从朋友之间传递,然后最后回到了1这个人,问你 是否有解,然后有解输出路径 收获:哈 ...
- [Python] numpy fillna() for Dataframe
In the store marketing, for many reason, one stock's data can be incomplete: We can use 'forward fil ...
- Android ImageView设置图片原理(下)
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 写完上一篇后,总认为介绍的知识点不多,仅仅是一种在UI线程解析载入图片.两种在子线程解析,在UI线程 ...
- 受不了Android SDK文档打开缓慢问题,自己开发简易脱机浏览器。
google android sdk离线文档打开的时候特别慢,据说是要从谷歌官网拉取一些东西导致的.脱机浏览能够解决该问题.PC端能够使用firefox. 可是Android端貌似没有支持脱机工作的浏 ...
- Spring官方文档翻译——15.4 处理器映射(Handler mappings)
15.4 处理器映射(Handler mappings) 注:以下将handler翻译成处理器 在Spring早先的版本号中,用户还须要在web应用上下文中定义处理器映射来配置请求(requests) ...
- Spark技术内幕:Client,Master和Worker 通信源代码解析
Spark的Cluster Manager能够有几种部署模式: Standlone Mesos YARN EC2 Local 在向集群提交计算任务后,系统的运算模型就是Driver Program定义 ...
- shu_1171 十->二进制转换(输入输出控制)
cid=1079&pid=19">http://202.121.199.212/JudgeOnline/problem.php?cid=1079&pid=19 分析:主 ...
- MySQL外键的介绍
在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束. 1.MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种.不同的是MySQL会自动为所有表的主键进行索 ...