BCBEADS - Đếm hạt

Link Sub: http://www.spoj.com/PTIT/problems/BCBEADS/
Người Gửi: Darkness

  • Problem:

Bessie đã đổ ra bộ sưu tập của cô với N (1<=N<=80) hạt xanh và cam (biểu diễn bởi 0 và 1) xuống sàn.
Bessie dọn dẹp sự lộn xộn bằng cách sắp xếp chúng lại thành 1 đường thẳng dài. Cô muốn đếm số lần hai hạt  liên tiếp khác màu nhau.
Hãy giúp cô thực hiện điều này.

Input
* Dòng 1: 1 số nguyên: N  
* Dòng 2: Dòng 2 chứa N số nguyên, mỗi số là 0 hoặc 1
Output
* Dòng 1: 1 số nguyên biểu diễn số lần hai hạt liên tiếp khác màu.
Example:
Input
6
1 0 0 1 1 1
Output:
2

  • Solution:

Duyệt tuần tự: i: [1,N) 
Nếu: [i]!=[i+1] -> đếm++;  
Chú ý: Chỉ duyệt đến N-1 vì xét có xét [i+1] thì phần tử [N+1] sẽ là số vô định

  • Code:

C++:

https://pastebin.com/Ar4THHeF

/*
    Darkness
*/
#include <iostream>
using namespace std;
 
int main ()
{
    // In;
    int N;
    cin>>N;
    int Arr[N+1];
    for (int i=1; i<=N; i++)
    {
        cin>>Arr[i];
    }
    // Out
    int count=0;
    for (int i=1; i<N; i++)
    {
        if (Arr[i]!=Arr[i+1])
        {
            count++;
        }
    }
    cout<<count;
   
    return 0;
}


JAVA:


Share this

Related Posts

Previous
Next Post »