金字塔
金字塔
https://ac.nowcoder.com/acm/problem/22203
前言
- 一大早上A了的第二道水题
分析
- 针对一类模拟(我也很少打),可先判断题目中要求的最终结果,将抽象过程转化为实际朴素的过程,这个时候就不要考虑代码会码多长了,保持一颗清醒的头脑,理好思路
- 要输出一个图形,会发现每一层'*'的数量与' '都是有一定规律的,那就照着这个规律,那他们分别输出即可
代码
#include<bits/stdc++.h> using namespace std; int n; int main() { while(scanf("%d",&n)!=EOF) { int len=2*n-1; for (int i=1;i<=n;i++) { int hav=2*i-1; int rem=(len-hav)/2; for (int j=1;j<=rem;j++) putchar(' '); for (int j=1;j<=hav;j++) putchar('*'); for (int j=1;j<=rem;j++) putchar(' '); puts(""); } } return 0; }
彩蛋(没想到吧)
- 给大家放一个题,有兴趣可以思考一下(有模拟解法)
- 如果想知道解法是否正确就来私我,有全部数据oヽ( ̄▽ ̄)ノ
每日一题 文章被收录于专栏
每天的题,为了牛币