14 条题解
-
4
#include <iostream> using namespace std; int n; void one(){ for(int i=1;i<=n;i++)cout<<"*"; cout<<endl; } void md(int x,int k){ for(int j=1;j<=x;j++)cout<<"*"; for(int j=1;j<=k;j++)cout<<" "; for(int j=1;j<=x;j++)cout<<"*"; cout<<endl; } int main(){ cin>>n; one(); int x=n/2,k=1; for(int i=1;i<=n/2;i++){ md(x,k); x--; k+=2; } x+=2; k-=4; for(int i=1;i<=n/2-1;i++){ md(x,k); x++; k-=2; } one(); return 0; }
-
4
#include<stdio.h> #include<iostream> #include<math.h> using namespace std; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } }
-
2
#include <iostream> using namespace std; int n; void one(){ for(int i=1;i<=n;i++)cout<<"*"; cout<<endl; } void md(int x,int k){ for(int j=1;j<=x;j++)cout<<"*"; for(int j=1;j<=k;j++)cout<<" "; for(int j=1;j<=x;j++)cout<<"*"; cout<<endl; } int main(){ cin>>n; one(); int x=n/2,k=1; for(int i=1;i<=n/2;i++){ md(x,k); x--; k+=2; } x+=2; k-=4; for(int i=1;i<=n/2-1;i++){ md(x,k); x++; k-=2; } one(); return 0; }
-
1
#include<stdio.h> #include<iostream> #include<math.h> using namespace std; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } }
-
0
#include using namespace std;
int main() { int n; cin >> n; int mid = (n + 1) / 2;
for (int i = 1; i <= n; ++i) { int stars; // 左右两边星号数量 int spaces; // 中间空格数量 if (i == 1 || i == n) { // 第一行和最后一行全部星号 stars = n; spaces = 0; } else if (i <= mid) { stars = mid - i + 1; spaces = 2 * (i - 2) + 1; // i=2时空格为1,递增奇数 } else { stars = i - mid + 1; spaces = 2 * (n - i - 1) + 1; // 下半部分空格递减奇数 } if (spaces == 0) { // 中间无空格,整行星号 for (int k = 0; k < stars; ++k) cout << "*"; } else { // 有空格,先打印左星号 for (int k = 0; k < stars; ++k) cout << "*"; // 打印中间空格 for (int k = 0; k < spaces; ++k) cout << " "; // 打印右星号 for (int k = 0; k < stars; ++k) cout << "*"; } cout << "\n"; } return 0;
}
-
0
#include <bits/stdc++.h> using namespace std; int n; int main() { cin>>n; for(int i=1;i<=n;i++)cout<<"*"; for(int i=n/2;i>=1;i--){ cout<<endl; for(int j=1;j<=i;j++)cout<<"*"; for(int j=1;j<=n-2*i;j++)cout<<" "; for(int j=1;j<=i;j++)cout<<"*"; } for(int i=2;i<=n/2;i++){ cout<<endl; for(int j=1;j<=i;j++)cout<<"*"; for(int j=1;j<=n-2*i;j++)cout<<" "; for(int j=1;j<=i;j++)cout<<"*"; } cout<<endl; for(int i=1;i<=n;i++)cout<<"*"; return 0; }
-
0
#include <iostream> #include <bits/stdc++.h> using namespace std; const int N=1e7+10; const int INF=0x3f3f3f3f; int main() { int n; cin>>n; int zhong=n/2+1,bu=0; for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { if(i==1 || i==n) { cout<<'*'; } else { if(j<=zhong+bu && j>=zhong-bu) cout<<' '; else cout<<'*'; } } cout<<"\n"; if(i==1 || i==n) { bu=0; } else { if(i<zhong) bu++; if(i>=zhong) bu--; } } }
-
0
#include<stdio.h> #include<iostream> #include<math.h> using namespace std; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } }
-
0
#include<stdio.h> #include<iostream> #include<math.h> using namespace std; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } }
-
-1
#include<bits/stdc++.h> using namespace std; int main() { int n,t=1; cin>>n; for(int i=1; i<=n; i++) cout<<""; cout<<endl; for(int i=2; i<=n/2; i++) { for(int j=1; j<=(n-t)/2; j++) cout<<""; for(int j=1; j<=t; j++) cout<<" "; for(int j=1; j<=(n-t)/2;j++) cout<<""; cout<<endl; t+=2; } for(int i=2; i<=n/2+1; i++) { for(int j=1; j<=(n-t)/2; j++) cout<<""; for(int j=1; j<=t; j++) cout<<" "; for(int j=1; j<=(n-t)/2; j++) cout<<""; cout<<endl; t-=2; } for(int i=1; i<=n; i++) cout<<""; return 0; }
-
-1
#include<stdio.h> #include #include<math.h> using namespace std; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<""; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<""; } } cout<<endl; }
-
- }
-
-
-2
#include <math.h> #include <stack> #include <stdio.h> #include <iostream> #include <vector> #include <iomanip> #include <string.h> #include <algorithm> using namespace std; #define LL long long const int N = 1e5 + 10; const int INF = 0x3f3f3f3f; int main() { int n; cin>>n; n/=2; for(int i=1;i<=n+1;i++) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } for(int i=n;i>=1;i--) { for(int j=1;j<=n*2+1;j++) { if(n-i+2<j&&n+i>j) { cout<<" "; } else { cout<<"*"; } } cout<<endl; } }
- 1
信息
- ID
- 953
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 419
- 已通过
- 242
- 上传者