diff --git a/.vscode/c.code-snippets b/.vscode/c.code-snippets index 1f2bba1..3af9204 100644 --- a/.vscode/c.code-snippets +++ b/.vscode/c.code-snippets @@ -83,7 +83,12 @@ }, "Fake loop": { "prefix": "fake_loop", - "body": ["while (0) { // Fake loop", "}"], + "body": ["while (0) { /* Fake loop */", "}"], "description": "Fake loop" + }, + "Define Boolean": { + "prefix": "define_boolean", + "body": ["#define bool int", "#define true 1", "#define false 0"], + "description": "Define Boolean" } } diff --git a/0311/10.c b/0311/10.c new file mode 100644 index 0000000..f4d41d0 --- /dev/null +++ b/0311/10.c @@ -0,0 +1,48 @@ +#include +#define bool int +#define true 1 +#define false 0 +#define N 10005 +#define for_i(i, range, inner) \ + { \ + int i; \ + for (i = 0; i < range; i++) \ + inner; \ + } + +bool not_prime[N]; +void pre(int n) { + int prime[N], prime_length = 0; + int i; + for (i = 2; i <= n; ++i) { + if (!not_prime[i]) { + prime[prime_length++] = i; + } + for_i(j, prime_length, { + int pri_j = prime[j]; + if (i * pri_j > n) + break; + not_prime[i * pri_j] = true; + if (i % pri_j == 0) { + break; + } + }) + } +} + +int main() { + int n; + scanf("%d", &n); + pre(n); + { + int i = 2; + while (true) { + if (!not_prime[i] && !not_prime[n - i]) { + printf("%d=%d+%d", n, i, n - i); + return 0; + } + i++; + } + } + return 0; +} \ No newline at end of file diff --git a/0311/11.c b/0311/11.c new file mode 100644 index 0000000..bcdb352 --- /dev/null +++ b/0311/11.c @@ -0,0 +1,24 @@ +#include +#define for_i(i, range, inner) \ + { \ + int i; \ + for (i = 0; i < range; i++) \ + inner; \ + } + +int main() { + int m, n; + scanf("%d %d", &m, &n); + m = ((m % n) * (100 % n)) % n; + if (m > 100) { + return 0; + } + if (m != 0) { + m = n - m; + } + while (m < 100) { + printf("%02d ", m); + m += n; + } + return 0; +} \ No newline at end of file diff --git a/0311/12.c b/0311/12.c new file mode 100644 index 0000000..4adaf6e --- /dev/null +++ b/0311/12.c @@ -0,0 +1,24 @@ +#include + +int get_denominator(int line, int column) { + if (column + 1 - line > column) { + return get_denominator(line, column + 1 - line); + } + if (column == 1) { + return line; + } + { + int up = get_denominator(line - 1, column - 1); + int left = get_denominator(line, column - 1); + return up * left / (left - up); + } +} + +int main() { + int line, column; + scanf("%d %d", &line, &column); + printf("1/%d\n", get_denominator(line, column)); + return 0; + while (0) { /* Fake loop */ + } +} \ No newline at end of file diff --git a/0311/6.c b/0311/6.c index 1e15561..87d3ff9 100644 --- a/0311/6.c +++ b/0311/6.c @@ -13,6 +13,7 @@ int main() { min = a; } printf("%d", max - min); + return 0; } \ No newline at end of file diff --git a/0311/7.c b/0311/7.c new file mode 100644 index 0000000..2a84755 --- /dev/null +++ b/0311/7.c @@ -0,0 +1,20 @@ +#include +#define for_i(i, range, inner) \ + { \ + int i; \ + for (i = 0; i < range; i++) \ + inner; \ + } + +int main() { + int n, cnt=0; + scanf("%d", &n); + for_i(i, n, { + int a; + scanf("%d", &a); + if (a % 2 == 0) + cnt++; + }) + printf("%d", cnt); + return 0; +} \ No newline at end of file diff --git a/0311/8.c b/0311/8.c new file mode 100644 index 0000000..194d79e --- /dev/null +++ b/0311/8.c @@ -0,0 +1,16 @@ +#include +#define for_i(i, range, inner) \ + { \ + int i; \ + for (i = 0; i < range; i++) \ + inner; \ + } + +int main() { + int n, m; + scanf("%d %d", &n, &m); + for_i(i, n, { + for_i(j, i + 1, { printf("%d", m); }); + printf("\n"); + }) return 0; +} \ No newline at end of file diff --git a/0311/9.c b/0311/9.c new file mode 100644 index 0000000..08a3366 --- /dev/null +++ b/0311/9.c @@ -0,0 +1,23 @@ +#include +#define for_i(i, range, inner) \ + { \ + int i; \ + for (i = 0; i < range; i++) \ + inner; \ + } + +int main() { + int n, cnt; + scanf("%d", &n); + for_i(i, n + 1, { + int a = i; + while (a != 0) { + if (a % 10 == 2) { + cnt++; + } + a /= 10; + } + }); + printf("%d", cnt); + return 0; +} \ No newline at end of file diff --git a/0318/0.c b/0318-t/1.c similarity index 100% rename from 0318/0.c rename to 0318-t/1.c