ヒューズを吹くPOJ1484(簡易シミュレーション)

トピックへのリンク:http://poj.org/problem?id=1484

この問題は、簡単なシミュレーションすることができます。もしNコンテナ、M動作、最大容量C. アナログデバイスのスイッチング動作のそれぞれ。原稿は最大消費電力に加えて、デバイスの消費電力ながら、次にオープン閉じている場合。元が開いている場合、現在の値マイナス電源装置によって消費しながら、それをシャット。日付までの最大消費電力。Cよりも大きいが、出力ヒューズが切れた場合。そうでない場合、最大出力に達します。シミュレーションアルゴリズムは非常に単純ですが、私は長い時間(.........)のためにワシントン。まで

1の#include <iostreamの>
 2の#include <stdio.hの>
 3の#include <CStringの>
 4の#include <cmath>
 5の#include <ベクトル>
 6の#include <積層>
 7の#include <地図>
 8の#include < 設定 >
 9の#include <リスト>
 10の#include <キュー>
 11の#include < ストリング >
 12の#include <アルゴリズム>
 13の#include <iomanip>
 14  使用 名前空間STDを、
15  の#define MAX 50
 16  
17  構造体ノード
 18 {
 19      int型のSTA。
20      int型のパワー;
21  }。
22  
23  ノードARR [MAX]。
24  
25  のint N、M、C。
26  
27  のint main()の
 28  {
 29      のint = P 1 30      一方(CIN >> N >> M >> C && N!= 0 && M!= 0 && C =!0 31      {
 32          int型の T = 0// 功耗警告
33          int型の合計= 0 ;
34         int型の最大値= 0 ;
 35          のint X;
 36          INT I = 0、I <N - 、I ++ 37          {
 38は、              CIN >> ARR [I] .Power;
 39              ARR [I] .STA = 0 ; // 最初閉状態
40          }
 41である         ためint型 I = 0 ;私は<M、Iは++ 42は         、{
 43が              CIN >> X;
 44は、             IF(ARR [X- 1 ] .STAの== 0// 閉状態における電流
45              {
 46は                  ARR [X- 1 ] = .STA 。1 ; // 開き
47                  SUM = + ARR [X- 1。;] .Power
 48                  IF(SUM> MAX){最大= }; SUM
 49                  IF(SUM> C)
 50                  {
 51である                      のT = 1 ;
 52である                     // BREAK;    //は、これを追加常にWA、WAであろう
53れる                 }
 54である             }
 55              // 現在開いている
56             {
 57の                  ARR [X- 1 ] .sta = 0 58                  サム- =のARR [X- 1 ] .power。
59              }
 60          }
 61          であれば(Tの== 1 62          {
 63              COUT << " 配列" << P ++ << ENDL << " ヒューズが切れました。" << ENDL。
64          }
 65          他の
66          {
 67              COUT << " 配列"++ Pは<< <<てendl << " 未溶断したヒューズは、WAS " << <<てendl " 最大消費電力は、WAS " << <<最大" アンペア。" << てendl;
 68          }
 69          COUT <<てendl; // NOTEフォーマット要件、これはPEラップすることなく、
70      }
 71で     返す 0 ;
 72 }
コードの表示

消費電力の裁判官はCよりも大きい場合にはフラグが1にセットされ、私は、直接には、長い時間のためにWAで、その結果、抜け出すだろう、実際には、(フレーズを追加する必要はありません)、それを削除します。タイトルmの意味は、最終的に決意する前に、すべての操作を読み取るため。ロジックは何も問題ありませんが、後者は実際のデータを読んでいない、プログラムがこれを許可していませんが、途中、抜け出します。

最後に、出力フォーマットのタイトルは、次のに注意を払う必要があり、各シーケンス間の行間隔があります

 

おすすめ

転載: www.cnblogs.com/ygsworld/p/11116116.html