結果
| 問題 |
No.820 Power of Two
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-05-03 21:10:10 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 2,222 bytes |
| コンパイル時間 | 1,589 ms |
| コンパイル使用メモリ | 32,512 KB |
| 実行使用メモリ | 13,636 KB |
| 最終ジャッジ日時 | 2024-12-31 16:12:53 |
| 合計ジャッジ時間 | 14,189 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 6 TLE * 4 |
ソースコード
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <limits.h>
#define ROOP(i,n) for(i=0;i<n;i++)
//prototype declaration
int getint();
long long getllint();
double getdint();
char getch();
void setstring(char *s);
void intpr(int i);
void prllint(long long i);
void prdint(double i);
void prchar(char c);
void prstring(char *s);
int dfs(int v, int n, int *visited, int table[n][n]);
int gcd(int a, int b);
int lcm(int a, int b);
long long llgcd(long long a, long long b);
long long lllcm(long long a, long long b);
int main(void) {
int i, n, k, ans = 0;
n = getint();
k = getint();
int max = (int)pow(2, n);
int check = (int)pow(2, k);
if (max < check) {
intpr(0);
return 0;
}
ROOP(i, max) {
if (i % check == 0) {
ans++;
}
}
intpr(ans);
return 0;
}
int getint() {
int i;
scanf("%d", &i);
return i;
}
long long getllint() {
long long i;
scanf("%lld", &i);
return i;
}
double getdint() {
double i;
scanf("%lf", &i);
return i;
}
char getch() {
char c;
scanf("%c", &c);
return c;
}
void setstring(char *s) {
scanf("%s", s);
}
void intpr(int i) {
printf("%d\n", i);
}
void prllint(long long i) {
printf("%lld\n", i);
}
void prdint(double i) {
printf("%lf\n", i);
}
void prchar(char c) {
printf("%c\n", c);
}
void prstring(char *s) {
printf("%s\n", s);
}
int dfs(int v, int n, int *visited, int table[n][n]) {
int all_visited = 1, i;
ROOP(i,n) {
if (!visited[i]) {
all_visited = 0;
break;
}
}
if (all_visited) {
return 1;
}
int count = 0;
ROOP(i,n) {
if (!table[v][i]) continue;
if (visited[i]) continue;
visited[i] = 1;
count += dfs(i, n, visited, table);
visited[i] = 0;
}
return count;
}
int gcd(int a, int b) {
int r;
if (a < b) {
r = a;
a = b;
b = r;
}
r = a % b;
while (r != 0) {
a = b;
b = r;
r = a % b;
}
return b;
}
int lcm(int a, int b) {
int r = llgcd(a, b);
a /= r;
return a * b;
}
long long llgcd(long long a, long long b) {
long long r;
if (a < b) {
r = a;
a = b;
b = r;
}
r = a % b;
while (r != 0) {
a = b;
b = r;
r = a % b;
}
return b;
}
long long lllcm(long long a, long long b) {
long long r = llgcd(a, b);
a /= r;
return a * b;
}