From f97ad3e9e225a288e7a8a53c2ef0acb45a47dbde Mon Sep 17 00:00:00 2001 From: Raphael McSinyx Date: Sat, 19 Nov 2016 19:00:47 +0700 Subject: Thêm đề 12 Thanh Hoá 2008-2009 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "12/TP-ThanhHo\303\241-2009/bai4.pas" | 72 +++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 "12/TP-ThanhHo\303\241-2009/bai4.pas" (limited to '12/TP-ThanhHoá-2009/bai4.pas') diff --git "a/12/TP-ThanhHo\303\241-2009/bai4.pas" "b/12/TP-ThanhHo\303\241-2009/bai4.pas" new file mode 100644 index 0000000..04839af --- /dev/null +++ "b/12/TP-ThanhHo\303\241-2009/bai4.pas" @@ -0,0 +1,72 @@ +var + f: text; + n, i: shortint; + a: array of string; + + +function minus(num, bit: shortint): boolean; + begin + minus := num shr bit mod 2 = 1 + end; + + +function cal(n, b: shortint): boolean; + var + i, s: shortint; + + begin + s := 0; + + for i := 2 to n do + if minus(b, n - i) then + s := s - i + else + s := s + i; + + cal := s = -1 + end; + + +function equa(n, b: shortint): string; + var + i: shortint; + + begin + equa := '1'; + + for i := 2 to n do + begin + if minus(b, n - i) then + equa := equa + '-' + else + equa := equa + '+'; + + equa := equa + char(i + 48) + end; + + equa := equa + '=0' + end; + + +begin + assign(f, 'BAI4.INP'); + reset(f); + readln(f, n); + close(f); + setlength(a, 0); + + if n mod 4 mod 3 = 0 then + for i := 1 to 1 shl (n - 1) - 1 do + if cal(n, i) then + begin + setlength(a, length(a) + 1); + a[length(a) - 1] := equa(n, i) + end; + + assign(f, 'BAI4.OUT'); + rewrite(f); + writeln(f, length(a)); + for i := 0 to length(a) - 1 do + writeln(f, a[i]); + close(f) +end. -- cgit 1.4.1