UDP广播协议叫吃饭


私信TA

用户名:Mustenaka

访问量:134988

签 名:

个人博客www.mustenaka.cn

等  级
排  名 12
经  验 23741
参赛次数 8
文章发表 196
年  龄 3
在职情况 学生
学  校 Sky_box
专  业 NE

  自我简介:

欢迎光临我的博客www.mustenaka.cn,Python,C#,U3D,C/C++开发合作可以找我

解题思路:
    最开始我是想暴力的,然鹅....

SVZ_S3TH[5P9{V5BBOBSXQJ.png

    写到900+的行数,全是三角形......我就已经吐血了....最主要的是这样写还不对....题目挖坑,“\\”双斜杠,才可以正常的表示一个斜杠,因为'\'本身表示一种特殊的控制符表示,比如'\n'这就是换行符,所以语法规定"\\"才能表示为'\'的显示....真的是要人吐血啊。


    中毒....下次各位见到画图题,数据上了10,千万不要像我这样暴力了。。。。


说回来正常的思路:

    看过一些算法书的同学可能会知道,我们其实可以借助一个常量字符串的格式来将我们所需要格式输出的某一个东西(就是这个东西重复出现),进行预设。

    比如这题就可以这样对金字塔的每一个三角形进行预设:

const char rec[3]="/\\";         //"\"需要使用双斜杠才能表示

    然后照常按照我们给一些矩阵画图的思路,进行空格的填充,同时换行的填充,以及三角的填充,具体的方式各位可以直接看代码。

参考代码:

#include<bits/stdc++.h>
#define hh ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#pragma GCC optimize(2)
using namespace std;
int main(){
        hh;
	const char rec[3]="/\\";
	int n;
	while(cin>>n){
		int temp=n,ans=0;
		while(n>0&&ans<=temp){
			for(int i=0;i<n-1;i++){
				cout<<' ';
			}
			for(int i=0;i<ans+1;i++){
				cout<<rec;
			}
			cout<<endl;
			n--;
			ans++;
		}
	}
	return 0;
}

PS:这里用到了一个输入输出流优化以及开启了O2优化,这是个人用喜欢使用的竞赛模板...

//#define hh ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#pragma GCC optimize(2)

这两句话看不懂的话,直接删掉就好了...反正数据量小,没啥区别的


PPS:我期待一个不正常的方法

 

0.0分

2 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区