http://pat.zju.edu.cn/contests/pat-b-practise/1027
分析: 啧~
代码:
//打印沙漏
#include
#include
#include
#include
#include
using namespace std;
void print(int x, char c)
{
int y;
for(int i=x;i>0;i--){
y=x-i;
while(y--) printf(" ");
for(int t=i*2-1; t>0; t--){
printf("%c",c);
}
printf("\n");
}
for(int i=2;i<=x;i++){
y=x-i;
while(y--) printf(" ");
for(int t=i*2-1; t>0; t--){
printf("%c",c);
}
printf("\n");
}
}
int main()
{
freopen("in.txt","r",stdin);
int n,x,r;
char c;
while(~scanf("%d %c",&n,&c)){
if(n==1) {
printf("%c\n%d\n",c,0);
continue;
}
x= sqrt( (double)(n+1)/2.0 );
r= n-2*x*x+1;
// cout<