首页 > 其他 > 详细

Fish

时间:2015-07-25 16:35:53      阅读:102      评论:0      收藏:0      [点我收藏+]
 1         /// <summary>
 2         /// Solution
 3         /// 通过率 100%
 4         /// </summary>
 5         /// <param name="A"></param>
 6         /// <param name="B"></param>
 7         /// <returns></returns>
 8         public static int solution(int[] A, int[] B)
 9         {
10             Stack<int> up = new Stack<int>();
11             Stack<int> down = new Stack<int>();
12             for (int i = 0; i < A.Length; i++)
13             {
14                 if (B[i] == 1)
15                     down.Push(A[i]);
16 
17                 if (B[i] == 0)
18                 {
19                     if (down.Count == 0)
20                     {
21                         up.Push(A[i]);
22                     }
23                     else
24                     {
25                         while (down.Count > 0)
26                         {
27                             if (down.Peek() > A[i])
28                                 break;
29                             else
30                                 down.Pop();
31                         }
32                         if (down.Count == 0)
33                             up.Push(A[i]);
34                     }
35                 }
36             }
37             return up.Count + down.Count;
38         }

 

Fish

原文:http://www.cnblogs.com/HuoAA/p/4676076.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!