BCCOM spoj PTIT – Số nén tối giản

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

1. Đề bài BCCOM spoj PTIT

Ta gọi phép nén một số nguyên là tính tổng các chữ số của nó. Dễ thấy, sau một số phép nén, thì số còn lại chỉ có một chữ số và ko nén được nữa. Ta gọi số đó là số nén tối giản.

Ví dụ cho số 86. Sau phép nén thứ nhất ta đk: 8+6=14. Sau phép nén thứ 2: 1+4=5 => Số nén tối giản của 86 là 5.

Cho một số nguyên hãy tìm số nén tối giản của nó.

Input

Dòng đầu chứa số bộ test.

Mỗi dòng tiếp theo chứa 1 bộ test gồm 1 số nguyên dương. (<=10^9)

Mỗi dòng

Output

Mỗi dòng một số nén tối giản tương ứng.

Example

Input:
3

43

111

57871
Output:
7

3
1

2. Hướng dẫn BCCOM spoj PTIT

– Kết quả là tổng các chữ số mod 9, nếu bằng 0 thì xuất 9.

3. code tham khảo BCCOM spoj PTIT

const   fi='';
        nmax=1000000000;
type    data=longint;
var
        f:text;
        n:string;
        test:data;

procedure xuli;
var     i,s:data;
begin
        s:=0;
        for i:=1 to length(n) do
                s:=s+ord(n[i])-48;
        s:=s mod 9;
        if s<>0 then
                writeln(s)
        else
                writeln(9);
end;

procedure nhap;
var     i:data;
begin
        assign(f,fi); reset(f);
        readln(f,test);
        for i:=1 to test do
                begin
                        readln(f,n);
                        xuli;
                end;
end;

begin
        nhap;
end.

One thought on “BCCOM spoj PTIT – Số nén tối giản

Trả lời

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 *