- 博客(60)
- 资源 (1)
- 收藏
- 关注
原创 NYOJ 26、64、76、520
NYOJ 26#include#define N 1000010int ans[N]={0};void prime(){ int i,j; for( i=2; i<N; i++) if( ans[i] == 0 ) { for(j=2*i; j<N; j+=i) ans[j] = 1; }
2014-12-02 09:30:15
554
原创 NYOJ 513
#includechar sa[402],sb[402],sc[402];void add(char sa[],char sb[]){ int lena,lenb,len; int i=0,j=0; int p,t,temp; while(sa[i]!='.'&&sa[i]!='\0') i++; //a_point=i; while(sb[i
2014-12-02 09:25:16
442
原创 NYOJ 655
#include#includeint n,m;int b[205],c[205],d[205];int i,t,j;char a[201];void exchange(int b[],int c[]){ for(j=0;j<=t;j++) { d[j]=b[j]; b[j]=c[j]; c[j]=d[j]; }
2014-12-02 09:23:57
467
原创 NYOJ 399、458、477
NYOJ 399#include int main() { int n,b; while(scanf("%d %d",&n,&b)!=EOF) { //printf("%d\n",n/b); int i,t=0; for(i=b;i<=n;i+=b) t++; printf("%d\n",t);
2014-12-02 09:20:25
933
原创 NYOJ 275、276
NYOJ 275#include int main() { long ni; int a[1000],i,k; while(scanf("%ld",&ni)!=EOF) { for(i=0;i<1000;i++) { a[i]=ni%2; ni/=2;
2014-12-02 09:17:53
476
原创 NYOJ 260、263、264
NYOJ 260#include int main() { int n,i,m,a,sum[1001]; scanf("%d",&n); sum[0]=0; for(i=1;i<=1000;i++) { a=(1+i)*i/2; sum[i]=a+sum[i-1]; } while(n
2014-12-02 09:16:42
684
原创 NYOJ 241、243、255
NYOJ 241#include#include using namespace std; int main() { int n; char b[1020]; int a[28],m,max,i,j; cin>>n; while(n--) { memset(a,0,sizeof(a)); c
2014-12-02 09:13:25
591
原创 NYOJ 204、206
NYOJ 204#includeint u,d;int gcd(int a,int b){ if(a==0) return b; else return gcd(b%a,a);}int main(){ int n,i,g; char c; scanf("%d%*c",&n); for(i=0;i!=n;i++) { c=getchar(); if(c=='S'
2014-12-02 09:09:16
647
原创 NYOJ 168 、198、199
NYOJ 168#include#include int main() { int day,day_begin,room,n,max,i,j,t; int d[210]; scanf("%d",&t); while(t--) { scanf("%d",&n);//订单数 memset(d,0,sizeof(d));//未入住前,各天所需房间 for
2014-12-02 09:08:04
591
原创 NYOJ 122、124、125
NYOJ 122#includeint main(){ int m,n,k,i; int T[400],sum[400]; scanf("%d",&m); T[0]=0; for(i=1;i<=303;i++) T[i]=T[i-1]+i; sum[0]=0; for(i=1;i<=300;i++) sum[i
2014-12-02 09:05:42
444
原创 NYOJ 102、111
NYOJ 102 #include #include int main() { int n; double x1,y1,x2,y2,dis; scanf("%d",&n); while(n--) { scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2); dis=sqrt(
2014-12-02 09:02:33
380
原创 NYOJ 74、77、94、100
NYOJ 74#include int main() { int m,n,i,t,g,h,w; while(scanf("%d%d",&m,&n)&&m!=0&&n!=0) { for(i=0,g=0,t=0;i<3;i++) { h=m%10; w=n%10; m=m/10; n=n/10;
2014-12-02 08:59:46
412
原创 NYOJ 25、51、62
NYOJ 25#include#includeusing namespace std;string trans(string a){ string b=""; if(a[1]=='#'){ b+=char((a[0]-'A'+1)%7+'A'); b+='b'; }else{ b+=char((a[0]-'A'+6)%7+'A'); b+='#'; } return
2014-12-02 08:57:10
462
原创 NYOJ 60、75、113
NYOJ 60 谁获得了最高奖学金5#include#includetypedef struct {char name[20];int total;int test;int clas;char staff;char west;int thesis;} student;int main(){ student stu[110]; int g,st,su
2014-12-01 21:17:44
495
原创 NYOJ 722
NYOJ 722#include#includeint Map[9][9],floag;int IsCan(int number,int x,int y){//判断Numebr是否满足数独的条件 int i,j; for(i=0;i<9;i++){ if(Map[i][y]==number){ return 0; }
2014-12-01 21:12:52
452
原创 NYOJ 592
NYOJ 592#include#include#include#includeusing namespace std;int map[105][105]={0};int mm=10000,n=100;int fir,end,loop[105][105];int prime[11000]={1,1,0};int sx[]={0,0,1,-1},zy[]={1,-1,0,0};
2014-12-01 21:11:49
425
原创 NYOJ 523
NYOJ 523法一:#include #include #include using namespace std;int map[55][55][55],f[]={1,-1,0,0,0,0},g[]={0,0,1,-1,0,0},w[]={0,0,0,0,1,-1};bool vis[55][55][55],flag;struct Node{ int x,y,
2014-12-01 21:11:29
396
原创 NYOJ 499
NYOJ 499法一:#include#includeint a[10][10], count, n, m;int b[10][10];void DFS(int x, int y){ if(x > n || x m || y < 1 || a[x][y] == 1) { return ; } if(x == n && y == m) { count++;
2014-12-01 21:10:38
428
原创 NYOJ 491
NYOJ 491法一:#include"iostream"#include#include#includeusing namespace std;typedef unsigned char uchar;//char cc[2]={'+','-'}; //便于输出int n, //第一行符号总数 half,
2014-12-01 21:09:26
545
原创 NYOJ 488
NYOJ 488#include#includeint Map[9][9],floag;int IsCan(int number,int x,int y){//判断Numebr是否满足数独的条件 int i,j; for(i=0;i<9;i++){ if(Map[i][y]==number){ return 0; }
2014-12-01 21:09:09
446
原创 NYOJ 353
NYOJ 353#include #include #include #include using namespace std;const int MAXN = 35;const int INF = 0xfffffff;struct Node{ int x, y, z; int step; Node() { x = y =
2014-12-01 21:08:32
512
原创 NYOJ 325
NYOJ 325 #include #define max(a,b) a>b?a:bint V,ans,n,w[21],sum[21];void dfs(int i,int cnt){ if(i == 0) { ans = max(ans,cnt); return ; } if(ans == V || cnt+sum[i
2014-12-01 21:07:48
859
原创 NYOJ 284
NYOJ 284法一:#include#include#includeusing namespace std;typedef struct node{ int x,y,step;}node;bool operator<(const node &a,const node &b){ return a.step>b.step;}int dir[4][2]=
2014-12-01 21:06:54
485
原创 NYOJ 202
NYOJ 202 #include #include #include using namespace std;const int N = 15;int x[N],y[N],z[N],leftp[N],rightp[N];void midorder(int x){ if(x != -1) { midorder(leftp[x]); printf(
2014-12-01 21:06:05
430
原创 NYOJ 82
NYOJ 82法一:#include #include #include #include using namespace std;typedef struct pos{ int x,y;} POS;int d[4][2]={{-1,0},{0,1},{1,0},{0,-1}};int bfs(POS from);char maze[20][20];in
2014-12-01 21:05:22
490
原创 NYOJ 58
NYOJ 58#includeint a[9][9]={1,1,1,1,1,1,1,1,1,1,0,0,1,0,0,1,0,1,1,0,0,1,1,0,0,0,1,1,0,1,0,1,1,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,1,0,1,0,0,1,1,1,0,1,0,1,0,0,1,1,1,0,1,0,0,0,0,1,1,1,1,1,1,1,1,1,
2014-12-01 21:04:15
386
原创 NYOJ 42
NYOJ 42#include#includeint map[1050][1050],vis[1050],chu[1050];int P,Q;void dfs(int point){ int i; vis[point]=1;//DFS 深度遍历 for(i=1;i<=P;i++) if(map[point][i]!=0) {
2014-12-01 21:03:18
488
原创 NYOJ 27
NYOJ 27 #include#includeconst int N=100;using namespace std;int n,m;int mp[N][N];int dir[4][2] = {{-1,0},{0,1},{1,0},{0,-1}};void dfs(int si,int sj){ mp[si][sj] = 0; int di,i,j; for(di=0
2014-12-01 21:02:12
436
原创 NYOJ 21
NYOJ 21法一: #include#include#include#includeusing namespace std;int total;int v1, v2, v3;bool visit[105][105][105]; //状态是否出现struct state{ int a, b, c; int ceng; //最小步数 state(){ a =
2014-12-01 21:01:29
831
原创 NYOJ 20
NYOJ 20 #include#include#include#include#include#includeusing namespace std;int pre[100005];vectorv[100005];//存储每个结点相邻的边void DFS(int cur){ for(int i = 0; i < v[cur].size(); ++i)//边 {
2014-12-01 21:00:02
407
原创 二分图最大独立集题目汇总 HDU3829,POJ1446、2771
HDU 3829#include #include #include #include using namespace std;struct people{ char ch1,ch2; int x,y;}aa[505];vector ss[505];int visted[505],flag[505],panduan[505];bool dfs(int x){
2014-09-25 09:53:19
500
转载 KM算法
基本原理 该算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转化为求完备匹配的问题的。设顶点Xi的顶标为A[ i ],顶点Yj的顶标为B[ j ],顶点Xi与Yj之间的边权为w[i,j]。在算法执行过程中的任一时刻,对于任一条边(i,j),A[ i ]+B[j]>=w[i,j]始终成立。 KM算法的正确性基于以下定理: 若由二分图中所有满足A[ i ]+
2014-09-25 09:12:01
598
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人