杭电2031

第一次用stack,挺好用的,先进后出的特性很实用

c++ stl栈stack的头文件为

#include  

c++ stl栈stack的成员函数介绍

操作 比较和分配堆栈

empty() 堆栈为空则返回真

pop() 移除栈顶元素

push() 在栈顶增加元素

size() 返回栈中元素数目

top() 返回栈顶元素

下面是杭电2031的代码!

#include
#include
using namespace std;
int main()//利用栈的先进后出 的特性
{
    int n;
    int r;
    stacks;
    while(cin>>n>>r)
    {
        bool flag=true;
        if(n<0)
        {
            flag=false;
            n=-n;
        }
        while(n>0)
        {
            int temp=n%r;
            n/=r;
            if(temp>9)
            {
                temp=temp-10+'A';
            }
            else
            {
                temp=temp+'0';
            }
            s.push(temp);//将temp存到栈s中
        }
        if(!flag)
        {
            s.push('-');
        }
        while(!s.empty())
        {
            cout<            s.pop();//删除栈顶端的元素
        }
        cout<



    }
    return 0;
}

你可能感兴趣的:(杭电ACM)