• 个人简介

    string name="模拟代替大脑,暴力不用思考";

    //合法数独:

    #include <bits/stdc++.h>
    using namespace std;
    int a[10][10];
    bool hang[10][10],lie[10][10],sd[10][10];
    int over(){
    	cout<<"No";
    	return 0;
    }
    int main(){
    	for (int i = 1;i <= 9;i++)
    		for (int j = 1;j <= 9;j++)
    			cin>>a[i][j];
    	for (int i = 1;i <= 9;i++){
    		for (int j = 1;j <= 9;j++){
    			if (hang[i][a[i][j]]!=0)
    				return over();
    			else 
    				hang[i][a[i][j]]=1;
    		}
    	}
    	for (int i = 1;i <= 9;i++){
    		for (int j = 1;j <= 9;j++){
    			if (lie[j][a[i][j]]!=0)
    				return over();
    			else 
    				lie[j][a[i][j]]=1;
    		}
    	}
    	for (int i = 0;i < 9;i++){
    		for (int j = 0;j < 9;j++){
    			if (sd[i/3*3+j/3][a[i+1][j+1]]!=0)
    				return over();
    			else 
    				sd[i/3*3+j/3][a[i+1][j+1]]=1;
    		}
    	}
    	cout<<"Yes";
    	return 0;
    }
    

    凯撒密码:

    #include <bits/stdc++.h>
    using namespace std;
    int d;
    char c,a[1010];
    int main(){
    	cin>>a;
    	cin>>d;
    	int y = strlen(a);
    	for (int i = 0;i < y;i++){
    		c=a[i];
    		if (c >= '0' && c <= '9')
    			cout<<(c+d-'0')%10;
    		else if (c >= 'a' && c <= 'z')
    			cout<<(char)((97+(c+d-'a')%26)-32);
    		else 
    			cout<<(char)('A'+(c+d-'A')%26);
    	}
        return 0;
    }
    

    2048:

    #include<bits/stdc++.h>
    using namespace std;
    int a[5][5],scor,bi_scor,way;
    void fir(){
    	for (int i = 0; i < 16;i++)
    		a[i/4+1][i%4+1]=0;
    	if (scor > bi_scor){
    		printf("破纪录!\n新高分:%d\n",scor);
    		bi_scor=scor;
    	}
    	scor=2;
    } 
    void whi(){
    	for (int i = 1;i <= 4;i++){
    		for (int j = 1;j <= 4;j++)
    			cout<<a[i][j]<<' ';
    		cout<<endl;
    	}
    	cout<<"当前得分:"<<scor<<endl;
    	cin>>way;
    	if (way==1){
    		for (int j = 1;j < 4;j++){
    			for (int i = 1;i <= 4;i++){
    				if (a[i][j]!=0){
    					if (a[i][j+1]==0){
    						a[i][j+1]=a[i][j];
    						a[i][j]=0;
    					}
    					if (a[i][j+1]==a[i][j]){
    						a[i][j+1]+=a[i][j];
    						a[i][j]=0;
    					}
    				}
    			}
    		}
    	}
    	if (way==2){
    		for (int i = 1;i < 4;i++){
    			for (int j = 1;j <= 4;j++){
    				if (a[i][j]!=0){
    					if (a[i+1][j]==0){
    						a[i+1][j]=a[i][j];
    						a[i][j]=0;
    					}
    					if (a[i+1][j]==a[i][j]){
    						a[i+1][j]+=a[i][j];
    						a[i][j]=0;
    					}
    				}
    			}
    		}
    	}
    	if (way==3){
    		for (int j = 4;j > 1;j--){
    			for (int i = 1;i <= 4;i++){
    				if (a[i][j]!=0){
    					if (a[i][j-1]==0){
    						a[i][j-1]=a[i][j];
    						a[i][j]=0;
    					}
    					if (a[i][j-1]==a[i][j]){
    						a[i][j-1]+=a[i][j];
    						a[i][j]=0;
    					}
    				}
    			}
    		}
    	}
    	if (way==4){
    		for (int i = 4;i > 1;i--){
    			for (int j = 1;j <= 4;j++){
    				if (a[i][j]!=0){
    					if (a[i-1][j]==0){
    						a[i-1][j]=a[i][j];
    						a[i][j]=0;
    					}
    					if (a[i-1][j]==a[i][j]){
    						a[i-1][j]+=a[i][j];
    						a[i][j]=0;
    					}
    				}
    			}
    		}
    	}
    }
    void add(){
    	for (int i = 0;i < 16;i++){
    		if (a[i/4+1][i%4+1]==0){
    			a[i/4+1][i%4+1]=2;
    			break;
    		}
    	}
    }
    void if_end(){
    	bool flag=1;
    	for (int i = 1;i <= 4;i++)
    		for (int j = 1;j <= 4;j++)
    			if (a[i][j]==0)
    				flag=0;
    	if (flag){
    		printf("游戏结束!\n");
    		fir();
    	}
    }
    void sscor(){
    	for (int i = 0;i < 16;i++)
    		if (a[i/4+1][i%4+1] > scor)
    			scor=a[i/4+1][i%4+1];
    }
    int main(){
    	while(1){
    		add();
    		whi();
    		if_end();
    		sscor();
    	}
    	return 0;
    }
    

    扫雷:

    #include <bits/stdc++.h>
    
    using namespace std;
    
    struct made{
    	char front;
    	char behind;
    	int number;  
    };
    int x,y,boob_num=15,boob_now=0,n=1,g=0;
    made qp[11][11];
    void clean(){
    	for (int i = 1;i <= 10;i++){
    		for (int j = 1;j <= 10;j++){
    			if ((100-n)==(boob_num-boob_now))
    				qp[i][j].behind='*',boob_now++;
    			else if (boob_now!=boob_num && rand()%5==0) 
    				qp[i][j].behind='*',boob_now++;
    			else 
    				qp[i][j].behind=' ';
    			n++;
    		}
    	}
    	boob_now=0,n=1,g=0;
    	for (int i = 1;i <= 10;i++){
    		for (int j = 1;j <= 10;j++){
    			qp[i][j].front='#';
    			if (qp[i][j].behind!='*')
    				qp[i][j].number=(qp[i+1][j].behind=='*')+(qp[i+1][j+1].behind=='*')+(qp[i+1][j-1].behind=='*')+(qp[i][j+1].behind=='*')+(qp[i][j-1].behind=='*')+(qp[i-1][j+1].behind=='*')+(qp[i-1][j].behind=='*')+(qp[i-1][j-1].behind=='*');
    		}
    	}
    } 
    
    int main(){
    	srand(time(NULL)); 
    	while (1){
    		clean();
    		while (1){
    			for (int i = 1;i <= 10;i++,cout<<endl)
    				for (int j = 1;j <= 10;j++)
    					cout<<qp[i][j].front;
    			cout<<"请输入排查格子坐标(x y):";
    			cin>>x>>y;
    			if (qp[x][y].behind=='*'){
    				cout<<"BOOM!!!\n游戏结束\n雷区地图:\n";
    				for (int i = 1;i <= 10;i++,cout<<endl){
    					for (int j = 1;j <= 10;j++){
    						if (qp[i][j].behind=='*')
    							cout<<'*';
    						else 
    							cout<<qp[i][j].number;
    					}
    				}
    				break;
    			}
    			g++;
    			if (g==85){
    				cout<<"所有地雷已被找出\n地雷图:\n";
    				for (int i = 1;i <= 10;i++,cout<<endl){
    					for (int j = 1;j <= 10;j++){
    						if (qp[i][j].behind=='*')
    							cout<<'*';
    						else 
    							cout<<qp[i][j].number;
    					}
    				}
    				break;
    			} 
    			qp[x][y].front=(char)(qp[x][y].number+48);
    		}
    
    	}
    	return 0;
    }
    
  • 通过的题目

  • 最近活动

题目标签

NOIP 普及组
3
语法
3
2015
2
1
1
2005
1
2016
1
2020
1
2022
1
测试
1
CSP-J
1
模拟
1
O2优化
1
基础算法
1
CSP J 入门级
1
字符串
1
DAI
1
NOIP
1
提高组
1
A
1