HDOJ3784 继续xxx定律

来源:互联网 发布:路由器上mac是什么意思 编辑:程序博客网 时间:2024/06/05 01:06

原题链接

标记法。经典题,不需要去重。

附ac代码:

#include <stdio.h>int a[501], b[501];int main(){int n, i, t, j, k;while(scanf("%d", &n), n){for(i = 1; i <= n; ++i){scanf("%d", &a[i]);b[i] = 0;}for(j = 1; j <= n; ++j){t = a[j];//for(k = j + 1; k <= n; ++k)//if(t == a[k]) b[k] = 1;while(t != 1){if(t & 1) t = (t * 3 + 1) / 2;else t /= 2;for(k = 1; k <= n; ++k)if(k == j || b[k]) continue;else if(t == a[k]) b[k] = 1;}}for(k = n, i = 1; k >= 1; --k){if(b[k]) continue;if(i) printf("%d", a[k]), i = 0;else printf(" %d", a[k]);}printf("\n");}return 0;}


0 0