【12】编程网站C++题解
文章平均质量分 56
Demp_sey
学习数据挖掘ing
展开
-
BZOJ-1006: [HNOI2008]神奇的国度(弦图的最小染色,完美消除序列最大势算法)
#include #include #include using namespace std ;#define AddEdge( s , t ) Add( s , t ) , Add( t , s )#define MAXN 10100#define inf 0x7fffffffstruct edge { edge *next ; int t ;}原创 2014-03-02 18:35:36 · 175 阅读 · 0 评论 -
WIKIOI P2283题解
#include#includeusing namespace std;int main(){char str[100];int a[100];int len,i,sum=0,j=0,max=-10000,count=0,end;cin>>str;len=strlen(str);for(i=0,j=0;i<len;i++){if(str[i]=='K')sum=sum+1原创 2014-03-02 12:01:20 · 263 阅读 · 0 评论 -
BZOJ-1266: [AHOI2006]上学路线route(最短路+最小割)
#include #include #include #include using namespace std ; #define MAXV 1010#define pb push_back#define pf push_front#define MAXM 150010#define inf 0x7fffffff#define MAXN 1010 struct net原创 2014-03-03 19:58:04 · 208 阅读 · 0 评论 -
BZOJ-1486: [HNOI2009]最小圈(二分判定+DFS查负权圈)
#include #include #include using namespace std ; #define esp 0.0000000001#define MAXN 3010 const double inf = double( 0x7fffffff ) * double( 0x7fffffff ) ; struct edge { edge *next ;原创 2014-03-02 21:41:45 · 174 阅读 · 0 评论 -
poj-1095
#include#include#include#include#include#include#define LL long long#define MAXN 550000000using namespace std;LL dp[201];LL ans[201];struct list{ LL l,r;}node[51];void init(){ L原创 2014-03-09 17:10:02 · 167 阅读 · 0 评论 -
WIKIOI P1088题解
#includeint dui[1000]={0},cc[1000]={0},jl[1000]={0},sjy[1000][1000]={0},wi[1000][1000]={0};int main(){ int n,p,i,j,k,u,c,t=0,w,l,r,sc,allz,ii; scanf("%d %d",&n,&p); for(i=1;i<=n;i++){原创 2014-03-01 22:23:59 · 164 阅读 · 0 评论 -
BZOJ-1041: [HAOI2008]圆上的整点
#include #include #include #include using namespace std ;#define ll long longll r , ans = 0 ;ll gcd( ll x , ll y ) { if ( x < y ) swap( x , y ) ; while ( y ) { ll k = y ;原创 2014-03-02 18:31:57 · 131 阅读 · 0 评论 -
BZOJ-1898: [Zjoi2004]Swamp 沼泽鳄鱼(矩阵快速幂)
#include #include #include using namespace std ; #define mod 10000#define MAXN 55 struct mat { int n , m , a[ MAXN ][ MAXN ] ; mat( ) { memset( a , 0 , sizeof( a原创 2014-03-03 20:01:45 · 174 阅读 · 0 评论 -
poj-1807
#include#include#include#include#includeusing namespace std;#define LL intvectorvecx,vecy;void add(int x,int y){vecx.push_back(x);vecy.push_back(y);}LL xx[8]={-1,0,1,1,0};LL yy[8]={1,2,1,-1,原创 2014-03-09 17:11:24 · 152 阅读 · 0 评论 -
WIKIOI P2964题解
#include using namespace std;int n,m,ans;int prime(int n){ int i; if (n==1 || n==0)return 0; if (n==2)return 1; for(i=2;i*i<n;i++) if(n%i==0)return 0; if(i*i==n)return 0; r原创 2014-03-02 11:35:22 · 246 阅读 · 0 评论 -
WIKIOI P2492题解
#include #include #include #include using namespace std ;#define ll long long#define MAXN 100010#define check( ch ) ( ch >= '0' && ch <= '9' )void getint( ll &t ) { int ch ; for ( ch =getch原创 2014-03-01 21:57:47 · 220 阅读 · 0 评论 -
BZOJ-2326: [HNOI2011]数学作业(矩阵快速幂)
#include #include #include #include using namespace std ; #define ll long long #define maxn 3 ll n , mod ; struct mat { ll n , m , a[ maxn ][ maxn ] ; mat( ) {原创 2014-03-03 20:02:58 · 141 阅读 · 0 评论 -
BZOJ-1492: [NOI2007]货币兑换Cash(动态规划+动态维护凸壳)
#include #include #include using namespace std ;#define cal( p0 , p1 ) ( ( p0.y - p1.y ) / ( p0.x - p1.x ) )#define MAXN 101000#define X( x ) ( ( r[ x ] * f[ x ] ) / ( a[ x ] * r[ x ] + b[ x ] )原创 2014-03-02 18:34:16 · 194 阅读 · 0 评论 -
WIKIOI P1293题解
#include#include#include#include#includeusing namespace std;char c[110][110];int belong[110][110];int ans=0;int dx[12] = {-1, -1,-1, 0, 0, 1, 1, 1, -2, 0, 0, 2}, dy[12] = {-1, 0, 1, -1, 1,原创 2014-03-01 21:21:55 · 258 阅读 · 0 评论 -
WIKIOI P1102题解
#includeint main(){ int t,m,i,j,ti,jz,x[1011]={0}; scanf("%d %d",&t,&m); for(i=1;i<=m;i++) { scanf("%d %d",&ti,&jz); for(j=t;j>=1;j--) { if(t<j) break;原创 2014-03-01 21:10:13 · 176 阅读 · 0 评论 -
BZOJ-1072: [SCOI2007]排列perm(状压DP)
#include #include #include using namespace std ;#define maxs ( 1 << 11 )#define maxd 1010#define maxn 11int f[ maxs ][ maxd ] , n , tot , d , cnt[ 10 ] ;char s[ maxn ] ;int main( ) { sca原创 2014-03-02 18:28:17 · 212 阅读 · 0 评论 -
BZOJ-2821: 作诗(Poetize)(分块+二分)
#include #include #include #include using namespace std ; #define maxn 100001#define maxc 100001#define maxb 320#define inf 0x7fffffff struct saver { int v , t ; bool operator < (原创 2014-03-02 20:10:51 · 190 阅读 · 0 评论 -
BZOJ-3442: 学习小组(费用流)
#include #include #include #include using namespace std ; #define inf 0x7fffffff#define MAXN 210#define pf push_front#define pb push_backstruct edge { edge *next , *pair ; int t原创 2014-03-02 18:46:38 · 209 阅读 · 0 评论 -
BZOJ-1196: [HNOI2006]公路修建问题(二分)
#include #include #include using namespace std ;#define MAXN 10010#define MAXM 20010int s[ MAXM ] , t[ MAXM ] , c1[ MAXM ] , c2[ MAXM ] , n , m , k ;struct Uset { int father[ MAXN ] ; v原创 2014-03-02 18:30:39 · 159 阅读 · 0 评论 -
WIKIOI P1030题解
#include #include #define MIN(a,b) a<b?a:busing namespace std;int d[4][7];bool D[4][7]={false};int ANS = 99999999;bool Judge(int a[][7]){ int Ans[7]; for(int i=6,temp = 0;i>=1;--i){原创 2014-03-01 21:18:13 · 260 阅读 · 0 评论 -
WIKIOI P1019题解
#include#include#includeusing namespace std;bool graph[1001][1001];int main(){int t,n,m,a,b;bool trans = true;scanf("%d",&t);for(int i = 0;i < t;i++){trans = true;scanf("%d%d",&n,&m);memse原创 2014-03-01 21:26:53 · 161 阅读 · 0 评论 -
WIKIOI P1095题解
#includeint main(){int n,m,i,j,k,l,t,h,a[20001],x;scanf("%d%d",&n,&m);for(i=1;i<=n;i++)scanf("%d",&a[i]);for(i=1;i<=m;i++){for(j=n;j>1;j--)if(a[j]>a[j-1])break;h=j-1;for(l=n;l>1;l--)if(a[l原创 2014-03-01 21:12:51 · 159 阅读 · 0 评论 -
BZOJ-1468: Tree(树-点分治)
#include #include #include using namespace std ; #define AddEdge( s , t , d )Add( s , t , d ),Add( t , s , d )#define MAXN 40010#define L( t ) left[ t ]#define K( t ) key[ t ]#define R( t )原创 2014-03-02 21:38:07 · 170 阅读 · 0 评论 -
BZOJ-1433: [ZJOI2009]假期的宿舍(最大流)
#include #include #include using namespace std ; #define MAXN 10100#define AddEdge( s , t , f ) Add( s , t , f ) , Add( t , s , 0 )#define inf 0x7fffffff struct edge { int t , f , next原创 2014-03-03 19:59:15 · 163 阅读 · 0 评论 -
BZOJ-2038: [2009国家集训队]小Z的袜子(hose)(莫队)
#include #include #include #include using namespace std ;#define ll long long#define MAXN 50010#define MAXM 50010ll gcd( ll x , ll y ) { if ( x < y ) swap( x , y ) ; while ( y ) {原创 2014-03-02 18:38:14 · 207 阅读 · 0 评论 -
BZOJ-2783: [JLOI2012]树
微积分基础知识 前言:在信息学算法竞赛中,常有些数学类问题需用到微积分,或用到微积分的算法(如母函数,HNOI2012排队),这里本人总结了一下竞赛中常用的微积分基础知识,供大家参考,有写得不好的地方请多多包涵,感谢学长帮助修改审校,若有错误请留言告诉我,谢谢! 辅助参考: http://blog.csdn.net/u01140095原创 2014-03-02 18:25:39 · 173 阅读 · 0 评论 -
WIKIOI P2460题解
#include #include #include #include using namespace std;#define MAXN 30001#define inf 0x7fffffff#define MAXM 200001#define clear(x) memset(x,0,sizeof(x))struct edge{ int t; edge *next;原创 2014-03-02 11:39:01 · 245 阅读 · 0 评论 -
WIKIOI P2963题解
2979 失眠的小明题目描述 Description小明最近失眠,他准备睡觉之前数羊。一只羊,两只羊。。。他无聊地数。突然,冒出了几头猪。求他睡着前(文件结束前)数了多少羊?输入描述 Input DescriptionNN行,每行SHEEP或PIG输出描述 Output De原创 2014-02-28 22:02:35 · 184 阅读 · 0 评论 -
BZOJ-1293: [SCOI2009]生日礼物(离散化+单调队列)
#include #include #include using namespace std ;#define inf 0x7fffffff#define maxn 1000100#define maxk 101struct node { int v , t ; void oper( int _v , int _t ) { v = _v , t =原创 2014-03-02 18:29:30 · 179 阅读 · 0 评论 -
poj-2482
#include#include#include#includeusing namespace std;#define maxn 110000#define LL long longstruct list{ LL l,r,x,val;} node[maxn*6];struct liss{ LL x; LL y1,y2; LL c,val;}原创 2014-03-09 17:07:37 · 196 阅读 · 0 评论 -
poj-3114
#include#include#include#include#include#include#define tar_maxn 1100000#define INF 99999999using namespace std;struct Graph_tar{ struct g_edge{int l,r,v,next;}node_tar[tar_maxn];//初始边原创 2014-03-09 17:08:36 · 173 阅读 · 0 评论 -
WIKIOI P1438题解
#includeint main(){ int n; scanf("%d",&n); for(int i=1;i for(int c=n-i;c>=1;c--){ printf(" "); } printf("/"); for(int j=1;j printf("__");原创 2014-03-02 11:01:19 · 173 阅读 · 0 评论 -
BZOJ-1875: [SDOI2009]HH去散步(动态规划+矩阵快速幂)
#include #include #include using namespace std ; #define rep( i , x ) for ( int i = 0 ; i ++ < x ; )#define MAXN 210#define mod 45989 struct mat { int a[ MAXN ][ MAXN ] , n , m ;原创 2014-03-02 20:09:17 · 177 阅读 · 0 评论 -
BZOJ-1009: [HNOI2008]GT考试(KMP+DP+矩阵快速幂)
#include #include #include using namespace std ; #define rep( i , x ) for ( int i = 0 ; i < x ; ++ i )#define MAXN 25 struct mat { int a[ MAXN ][ MAXN ] , n , m ;原创 2014-03-03 20:00:21 · 184 阅读 · 0 评论 -
poj-2352
#include#include#include#includeusing namespace std;#define maxn 110000struct list{ int l,r; int x;}node[maxn*6];struct listt{ int x,y; bool friend operator < (const listt a,原创 2014-03-09 17:05:46 · 146 阅读 · 0 评论 -
WIKIOI P2935题解
#includeusing namespace std;#include#includestruct p{ string name; int c;}a[1001];int cmp(const void *a,const void *b){ p *p1=(p *)a; p *p2=(p *)b; return p2->c-p1->c;}int n,m,i原创 2014-03-01 14:47:27 · 177 阅读 · 0 评论