ソリューション:
あなたの数nを調整するには、場所に移動する必要があり、移動する2つの方法があります
左または右に1、2ムーブ
図2に示すように、左右の動きが、コスト1
最小コストを求めて
ソリューション:
私は、マルチマルチ座標座標偶数か奇数を見て、のは非常に簡単であると考えることができます
マイナス1プラス1つのパリティの変更が、2プラス2 [保存]を変更しません
コード:
1の#include <stdio.hの> 2の#include < ストリング・H> 3の#include <iostreamの> 4の#include <アルゴリズム> 5 使って 名前空間STDを、 6 CONST INT MAXN = 105 。 7 のint V [MAXN]。 8 のint main()の 9 { 10 INT N。 11 のscanf(" %d個"、&N) 12 INT ANS1 = 0、ANS2 = 0 、。 13 のために(int型 i = 1 ; iが= N <; ++ I) 14 { 15 のscanf(" %dの"、&A )。 16 // のscanf( "%d個"、&V [I])。 17 であれば(%2 ) 18 ANS1 ++ 。 19 他 ANS2 ++ ; 20 } 21 のprintf(" %d個の\ n " 、分(ANS1、ANS2))。 22 リターン 0 ; 23 }