1.nはバイナリ小数を10進数に変換しました
レコードだけ偉大な神コード、(以下作者のブログへのリンクは、ソースを明記してください)、現在最高のバージョンを見ています
#include <ビット/ STDC ++ H> 使用して 名前空間STDを、 const int型 N = 1005 ; int型のT、I、J、K、N、TMP; チャーSTR [N]。 チャーDEST [N]。 ボイドターン(チャー *のSTR、INTのN) { memsetの(DEST、0、はsizeof (DEST))。 INT LEN = STRLEN(STR)。 以下のための(I = len- 1 ; I> 1 ; i-- ) { int型 NUM = STR [I] - ' 0 ' 。 用(J =0 ; J <K || NUM!= 0 ; J ++ ) { TMP = 10 *のNUM +(J <K DEST [J] - ?' 0 ':0 ); DEST [J] = TMP / N + ' 0 ' 。 NUM = TMP%N。 } K = J。 } のprintf(" 0%のSの\ n " 、DEST)。 } int型のmain() { CIN >> STR >> N。 ターン(STR、N)。 リターン 0 ; }
より転載このコード
https://blog.csdn.net/ACdreamers/article/details/9037763
昨日はもちろん、データ構造に対して、今日やった、そして最終的に中置式がアウトに従事する2.ポーランド式の後、プロセスは、このオープン質問データのおかげで、カードが完全にコードポイントを変更され、極めて困難である......
二つの重要なアイデア:
優先度は、スタック、スタック出力の電流上面よりも低く、そして最後に圧入場合スタックの1)の使用は、印刷機オペレータの優先度に応じて、考え、
2)個人的に私は質問マイナスまたは負の数が表示されますので、唯一の、四つの基本的な二項演算子を必要とする多くの重要なピットは、主題だと思い、
これは負の数であることを示す、と最初の文字式である、またはそれは数ではなく、オペレータの前の前に、 - 「」ここに私の解決策は、符号があるかどうかを確認するために後置式の結果であります
もし-a = 0直接寄託番号0のスタックに押し込ま利用することができます