2017-01-03 10 views
-2

https://www.hackerrank.com/challenges/maximum-element最大の要素は

QUES リンクは出力を得ることができない IAM上に掲載されている最大の要素を印刷する - ために3要素をpopingのための2を、積み重ねることelmentを追加する1-ための3つのクエリを実行することですhackerrank 6-7のケースについて

int n,i;int in1,in2; 
    Scanner sc=new Scanner(System.in); 
    n=sc.nextInt(); 
    Stack<Integer> st=new Stack<Integer>();//stack for elements 
    Stack<Integer> stmax=new Stack<Integer>(); // stack for storing maximum 
     for(i=1;i<=n;i++) 
     { 
     in1=sc.nextInt(); 
     if(in1==1) 
      { 
        in2=sc.nextInt(); 
        if(st.size()==0) 
         { 

           stmax.push(in2); 
           st.push(in2); 
         } 
        else 
         { 
           if(in2>=stmax.peek()) 
            { 

           stmax.push(in2); 
           } 
           st.push(in2); 

          }  
     } 
     if(in1==2) 
      { 
      if(st.peek()==stmax.peek()) 
       stmax.pop(); 
      st.pop(); 

     } 
     if(in1==3) 
      { 
      System.out.println(stmax.peek()); 
     } 

     } 
+2

tput "はどういう意味ですか? – kraskevich

+0

@abhinav質問をするときに具体的かつ簡潔にしてください... – RamPrakash

+0

あなたのコードをコメントし、投稿する前にあなたのIDEフォーマットを持ってください。スペルチェッカーを使用します。 – greybeard

答えて

0

あなたのコードは正しいですが、代わりにif(st.peek()==stmax.peek())使用if(st.peek().equals(stmax.peek()))のこれはあなたのコードは、すべてのテストケースを渡すようになります「OUを取得することはできません何

+0

ansのおかげで!それは今働いている。あなたの解答を説明することはできますか? – abhinav

+0

あなたのスタックが使用する整数と整数はStringと同じオブジェクトなので、==実際には参照平等は値の平等ではなく、値の等しい必要があります – m7mdbadawy

関連する問題