본문 바로가기

별찍기6

[BOJ] 2438번: 별찍기 - 1 https://www.acmicpc.net/problem/2438 재귀로 풀기!!! #include > int N; void Print(int n) { if (n == 0) return; printf("*"); Print(n - 1); } void Star(int n) { if (n == N + 1) return; Print(n); puts(""); Star(n + 1); } int main() { scanf("%d", &N); Star(1); return 0; } 반복문으로 풀자!! #include int main(void) { int n; scanf("%d", &n); for (int i = 1; i 2018. 7. 26.
[BOJ] 2439번: 별찍기 - 2 https://www.acmicpc.net/problem/2439 재귀로 풀기! #include int N; void PrintBlank(int n) { if (n == 0) return; printf(" "); PrintBlank(n - 1); } void PrintAsterisk(int n) { if (n == 0) return; printf("*"); PrintAsterisk(n - 1); } void Star(int n) { if (n == N + 1) return; PrintBlank(N - n); PrintAsterisk(n); puts(""); Star(n + 1); } int main() { scanf("%d", &N); Star(1); return 0; } 반복문으로 풀기! #includ.. 2018. 7. 26.
[BOJ] 2440번: 별찍기 - 3 https://www.acmicpc.net/problem/2440재귀12345678910111213141516171819202122232425#include int N; void PrintAsterisk(int n){ if (n == 0) return; printf("*"); PrintAsterisk(n - 1);} void Star(int n){ if (n == 0) return; PrintAsterisk(n); puts(""); Star(n - 1);} int main(){ scanf("%d", &N); Star(N); return 0;}cs 반복문 12345678910111213#include int main(void){ int n; scanf("%d", &n); for (int i = n; i >.. 2018. 7. 26.
[BOJ] 2441번: 별찍기 - 4 https://www.acmicpc.net/problem/2441재귀123456789101112131415161718192021222324252627282930313233#include int N; void PrintBlank(int n){ if (n == 0) return; printf(" "); PrintBlank(n - 1);} void PrintAsterisk(int n){ if (n == 0) return; printf("*"); PrintAsterisk(n - 1);} void Star(int n){ if (n == 0) return; PrintBlank(N - n); PrintAsterisk(n); puts(""); Star(n - 1);} int main(){ scanf("%d", &N);.. 2018. 7. 26.
[BOJ] 2442번: 별찍기 - 5 https://www.acmicpc.net/problem/2442 재귀 #include int N; void PrintBlank(int n) { if (n == 0) return; printf(" "); PrintBlank(n - 1); } void PrintAsterisk(int n) { if (n == 0) return; printf("*"); PrintAsterisk(n - 1); } void Star(int n) { if (n == N + 1) return; PrintBlank(N - n); PrintAsterisk(2 * n - 1); puts(""); Star(n + 1); } int main() { scanf("%d", &N); Star(1); return 0; } 반복문 #include i.. 2018. 7. 26.
[BOJ] 2447번: 별찍기 - 10 2447번: 별찍기 - 10 풀이 규칙성을 찾는 수 밖에 없는데 대개 한 칸 빈칸은 쉽게 찾을 수 있을텐데 큰 빈칸을 찾는 게 어려울 수 있다. 이것은 표를 그려보면 쉽게 알 수 있는데 n=9일 때를 그려보면 '나누기 3의 몫’이 1인 구간만 빈칸인 것을 알 수 있다. 코드 #include int n; int main() { scanf("%d", &n); for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { int dx = i, dy = j; while (dx) { if (dx % 3 == 1 && dy % 3 == 1) break; dx /= 3, dy /= 3; } putchar(dx ? ' ' : '*'); } puts(""); } return .. 2018. 5. 15.