zoukankan      html  css  js  c++  java
  • 蓝桥杯 PREV-2 打印十字图

    题目链接:

    PREV-2 打印十字图

    思路:

    我们注意到我们只需要求出整张图的1/4个矩形,即可通过对称求出整张图;
    以整张图的中心为坐标原点, 我们以右上角的1/4矩形为例,层数i0开始一直到n,第i层的轨迹就是从(0,2i+2)(0, 2 * i + 2)开始往右打印2i+12 * i +1$,然后依次往下、往下、往右打印三个$,然后往右挪一格,从该格开始往下打印2 * i + 1$
    将每层打印好,然后按对称的规律输出即可;

    代码:

    #include<bits/stdc++.h>
    
    using namespace std;
    
    int n;
    bool c[100][100];
    
    int main() {
    #ifdef MyTest
    	freopen("Sakura.txt", "r", stdin);
    #endif
    	cin >> n;
    	for(int i = 0; i <= n; i++) {
    		int x = -1, y = 2 * i + 2, cnt = 2 * i + 1;
    		for(int j = 0; j < cnt; j++) c[++x][y] = 1;
    		c[x][--y] = 1; c[x][--y] = 1; c[++x][y] = 1; ++x;
    		for(int j = 0; j < cnt; j++) c[x][y--] = 1;
    	}
    	int d = 2 * n + 3;
    	vector<string> v;
    	for(int i = d - 1; i >= 0; i--) {
    		string s = "";
    		for(int j = d - 1; j >= 0; j--) s += c[j][i] ? '$' : '.';
    		for(int j = 1; j <= d - 1; j++) s += c[j][i] ? '$' : '.';
    		cout << s << '
    ';
    		v.push_back(s);
    	}
    	for(int i = d - 2; i >= 0; i--) cout << v[i] << '
    ';
    	return 0;
    }
    
  • 相关阅读:
    ICON 收集
    vs2015with_update_3
    文件大全,以后就从这些格式入手fuzz
    诗词
    tools URL 收集
    (四)ORBSLAM运动估计
    (三)ORB特征匹配
    (二)ORB描述子提取源码思路与实现
    (一)ORB描述子提取
    双目立体匹配——归一化互相关(NCC)
  • 原文地址:https://www.cnblogs.com/yuhan-blog/p/12308621.html
Copyright © 2011-2022 走看看