?? 1025.cpp
字號:
/* This Code is Submitted by wywcgs for Problem 1025 on 2005-09-19 at 11:34:05 */
#include <stdio.h>
int main()
{
long n, weight[27] = {1};
int t, i, rank[27], j, flag;
for(i = 1; i < 27; i++) {
weight[i] = weight[i-1] * 2 + 1;
}
scanf("%d", &t);
for(i = 0; i < t; i++) {
scanf("%ld", &n);
printf("%ld ", n);
for(j = 26; j >= 0; j--) {
rank[j] = n / weight[j];
n -= weight[j] * rank[j];
}
putchar('[');
flag = 0;
for(j = 0; j < 27; j++) {
if(rank[j] == 2) {
if(flag == 1) {
putchar(',');
}
printf("%d,%d", j, j);
flag = 1;
} else if(rank[j] == 1) {
if(flag == 1) {
putchar(',');
}
printf("%d", j);
flag = 1;
}
}
printf("]\n");
}
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -