- 博客(10)
- 收藏
- 关注
原创 Java并发编程实战读书笔记(一、线程安全性)
1.无状态的对象一定线程安全,因为没有共享状态,题目都在访问不同的实例。 2.当某个计算的正确性取决于多个线程的交替执行
2020-06-20 16:08:14 149
原创 hdu3466 Proud Merchants (最易懂的排序证明)
Problem Description Recently, iSea went to an ancient country. For such a long time, it was the most wealthy and powerful kingdom in the world. As a result, the people in this country are still very ...
2018-12-10 18:23:28 222
原创 Codeforces Round #523 (Div. 2)C. Multiplicity
11点送命场没敢打,赛后补题,还是看了神仙代码才会的(弱~)。 dp,枚举每一个数,找出每一个数的因数,然后枚举相应的位置,状态方程为dp[j]+=dp[j-1](dp[k]记录的是已枚举完的数到k位置有多少组情况),空间优化一下所以要注意从大到小。 上代码~ #include<bits/stdc++.h> using namespace std; int dp[100000...
2018-11-23 21:30:27 149
原创 Educational Codeforces Round 43 (Rated for Div. 2) A B C
A.#include<iostream> #include<cstring> using namespace std; int main(){ int i,n,j; j=0; string s; cin>>n; cin>>s; for(i=0;i<n;i++){ if(s[i]=='0') j++; } if(n==1&a...
2018-05-01 11:35:02 187
原创 Codeforces 961B Lecture Sleep
前缀和与后缀和处理一下就行,然后枚举O(N)复杂度。#include<iostream> #include<cmath> using namespace std; int a[100005]={0},b[100005]={0},sumq[100005]={0},sumh[100005]={0},i,j,sum[100005]={0},maxn=0; int main(){...
2018-04-05 19:07:15 269
原创 hdu 1213 How many tables (适合新人入门贴)
今天是并查集专场哦,题意就不多解释了,看不懂的去补补英语吧ㄟ( ▔, ▔ )ㄏ,裸的并查集,首先初始化让每个点的根节点为他自己本身,若输入a,b认识那么就把a,b归入同一集合(也就是让a,b的根节点一样,并查集里用集合里某一个点作为根节点来代表这个集合,也叫做代表元),最后只要检测有几个代表元就可以知道最少要几个桌子了,还有一点就是路径压缩,我们每次找一点的根节点都要从他的父节点,爷爷节点啥的找过...
2018-02-11 21:28:17 147
原创 poj 1258 Agri-Net
最短路水题,用上次讲到的prim算法就能可以了。直接上代码喽( ̄▽ ̄)"。#include<iostream> #include<cstring> using namespace std; #define inf 0x3f3f3f3f int d[105][105],v[105]={0},lowcost[105]; void prim(int n){ int i,...
2018-02-11 20:27:22 117
原创 51nod 1649 齐头并进
dijkstra水题,也是适合图论入门的,注意几个特殊情况就可以了,由题意知任意两个村庄之间一定有汽车或火车直达,所以只要求一次最短路就行了。别的不说直接上代码。#include<bits/stdc++.h> using namespace std; int dt[405][405],db[405][405],vis[405]={0},lowway[405],n,m; #defin...
2018-02-10 21:20:39 118
原创 51nod 1212 无向图最小生成树
emmmmm.....51基础题别的不说(赤裸裸的prim算法),就是用于最小生成树算法入门的,主要是prim算法。先随便选一个点加入集合v,然后在非v集合中不断找到这个集合距离最小的点,之后把该点加入集合v并更新非v集合的点到集合v的最小的距离(既然有新点加入,那么非v集合中各点到v集合的的最小距离也要更新啦),再把最小距离加入cost ,最后重复以上操作直到把所有点加入v集合就可以啦。(是不是...
2018-02-09 16:25:04 195
原创 51 nod 1179 最大的最大公约数
枚举暴力解决水题,直接上代码~( ̄▽ ̄~)~。 #include #include using namespace std; int main() { int i,n,t,k=0,j,sum,a[1000005]; cin>>t; while(t--){ cin>>n; k=max(k,n); a[n]++; }
2018-01-10 18:58:05 196
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人