NOIP 1998 普及组 2的幂次方 解题报告
2011-08-19 10:41
239 查看
虽说是普及组,还是不好处理啊!想了好久,最后决定使用一个栈来维护所有的枚举,总的来说我这里算是用了两个栈(因为BFS本身就能算一个栈),这个题目真的有挑战性啊,算法没什么,但是规律方面的东西好重要饿。。。。
不说了,代码:
不说了,代码:
#include <stdio.h> #include <stdlib.h> int flag = 0; int stack[100000]; int top; void push(int k) { stack[top++] = k; } int pop(void) { return stack[--top]; } void output(int k) { int i, j; int t; if(k == 0){ printf("0"); return ; } for(i = j = 0; k != 0; i++, k /= 2){ if(k & 1){ push(i); j++; } } for(i = 0; i < j; i++){ if(i != 0){ printf("+"); } t = pop(); if(t == 1){ printf("2"); continue; }else{ printf("2("); output(t); printf(")"); } } } int main(int argc, char **argv) { int n; scanf("%d", &n); output(n); printf("\n"); return 0; }
相关文章推荐
- NOIP 2007 普及组解题报告
- NOIP2008普及组 排座椅(重庆一中高2018级信息学竞赛测验5) 解题报告
- 【NOIP2016普及组】解题报告 买铅笔 回文日期 海港 魔法阵
- NOIP2016普及组复赛解题报告
- 纪中训练 day9 【NOIP普及组】模拟赛D组 解题报告
- NOIP2008 普及组T2 排座椅 解题报告-S.B.S
- 纪中训练 day14【NOIP普及组】模拟赛B组&C组 解题报告
- NOIP 1998 连接多位数 解题报告
- noip2013普及组解题报告
- [noip2001普及(初中)组] 第二题《最大公约数和最小公倍数问题》解题报告
- 纪中训练 day5 【NOIP普及组】模拟赛D组 解题报告
- NOIP2008 普及组T3 传球游戏 解题报告-S.B.S.
- NOIP2017普及组解题报告
- 纪中训练 day8 【NOIP普及组】模拟赛D组 解题报告
- [Wikioi 2808][NOIP 1998普及组]二的幂次方---HBNU的童鞋过来看看
- NOIP2010普及组 导弹拦截(重庆一中高2018级信息学竞赛测验3) 解题报告
- NOIP2016普及组T3海港解题报告
- NOIP2016普及组复赛解题报告
- 纪中训练 day1 【NOIP普及组】模拟赛D组 解题报告