#include <stdio.h>
void printBlank(int numRows) {
if(numRows > 1) {
printBlank( numRows - 1 );
}
}
void printStar(int numStars) {
if(numStars > 1)
{
printStar(numStars - 1);
}
}
int recurse(int maxRows, int minStars) {
printBlank( maxRows-- );
printStar( minStars );
if ( maxRows < 1){
return 0;
}
else
{
recurse( maxRows, minStars + 2);
}
}
int main(void) {
int endRows = 5;
int startStars = 1;
recurse( endRows, startStars );
}
I2luY2x1ZGUgPHN0ZGlvLmg+CnZvaWQgcHJpbnRCbGFuayhpbnQgbnVtUm93cykgewogICAgcHJpbnRmKCIgIik7CiAgICBpZihudW1Sb3dzID4gMSkgewogICAgICAgIHByaW50QmxhbmsoIG51bVJvd3MgLSAxICk7CiAgICB9Cn0KCnZvaWQgcHJpbnRTdGFyKGludCBudW1TdGFycykgewogICAgCiAgICBwcmludGYoIioiKTsKICAgIAogICAgaWYobnVtU3RhcnMgPiAxKQogICAgewogICAgICAgIHByaW50U3RhcihudW1TdGFycyAtIDEpOwogICAgfQp9CgppbnQgcmVjdXJzZShpbnQgbWF4Um93cywgaW50IG1pblN0YXJzKSB7CgogICAgcHJpbnRCbGFuayggbWF4Um93cy0tICk7CiAgICBwcmludFN0YXIoIG1pblN0YXJzICk7CiAgICBwcmludGYoIlxuIik7CiAgICAgICAgCiAgICBpZiAoIG1heFJvd3MgPCAxKXsgCiAgICAJcmV0dXJuIDA7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAJIHJlY3Vyc2UoIG1heFJvd3MsIG1pblN0YXJzICsgMik7CiAgICB9Cn0KCmludCBtYWluKHZvaWQpIHsKCiAgICBpbnQgZW5kUm93cyA9IDU7CiAgICBpbnQgc3RhcnRTdGFycyA9IDE7CgogICAgcmVjdXJzZSggZW5kUm93cywgc3RhcnRTdGFycyApOwp9Cgo=