P144SUMA spoj PTIT – Nam châm

Nguồn đề bài: http://www.spoj.com/PTIT/problems/P144SUMA/

1. Đề bài P144SUMA spoj

Tí đang học về từ tính của nam châm. Cậu biết rằng nam châm có 2 cực âm và dương, cùng cực thì đẩy nhau, khác cực thì hút nhau.

Một lần cậu sắp lần lượt các nam châm theo chiều dọc, nhiệm vụ của bạn là xem có bao  nhiêu khối nam châm nằm rời nhau.

Nam châm được biểu diễn biểu 2 kí tự 0 và 1. 0 là cực âm, 1 là cực dương.

Input

Dòng đầu tiên là số nguyên n (1 <=n <= 100 000).

n dòng tiếp theo là các xâu đại điện cho nam châm, lần lượt được Tí xếp.

Output

Một dòng duy nhất là số khối nam châm nằm rời nhau.

Example

Test 1:

Input:

6

10

10

10

01

10

10

Output:

3

 

Test 2:

Input:

4

01

01

10

10

Output:

2

2. Cách làm P144SUMA spoj PTIT – Nam châm

– Bài này quá đơn giản, mình sẽ giải thích code bên dưới.

– ở mỗi dòng, nhập 2 số 0, 1 và xâu s.

– dùng char c để lưu lại kí tự s[2], và tiếp tục nhập tiếp, nếu S[1] vừa nhập = c thì tức là nó đẩy nhau. cập nhật kết quả và biến c cho lần thực hiện sau

3. Code tham khảo P144SUMA spoj PTIT

const   fi='';
        nmax=100000;
type
        data=longint;
var
        f:text;
        n:data;

procedure xuli;
var     i:data;
        s:string;
        c:char;
        dem:data;
begin
        assign(f,fi); reset(f);
        readln(f,n);
        dem:=1;
        c:=' ';
        for i:=1 to n do
                begin
                        readln(f,s);
                        if s[1]=c then
                                inc(dem);
                        c:=s[2];
                end;
        writeln(dem);
        close(f);
end;


begin
        xuli;
end.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *