about summary refs log tree commit diff
path: root/09/Q-Huế-2014
diff options
context:
space:
mode:
authorNguyễn Gia Phong <mcsinyx@disroot.org>2020-06-06 21:33:13 +0700
committerNguyễn Gia Phong <mcsinyx@disroot.org>2020-06-06 21:33:13 +0700
commit2f674dc80f0382f1c3178f435714960734dc9d3c (patch)
tree2abba7e4ec72bd16f58f7375126144d3fd9f4bca /09/Q-Huế-2014
parentb2d80610db6beda38573890ed169815e495bc663 (diff)
downloadcp-2f674dc80f0382f1c3178f435714960734dc9d3c.tar.gz
Reorganize stuff from secondary school
Diffstat (limited to '09/Q-Huế-2014')
-rw-r--r--09/Q-Huế-2014/README.md53
-rw-r--r--09/Q-Huế-2014/bai1.pas15
-rw-r--r--09/Q-Huế-2014/bai2.pas35
-rw-r--r--09/Q-Huế-2014/bai3.pas34
4 files changed, 0 insertions, 137 deletions
diff --git a/09/Q-Huế-2014/README.md b/09/Q-Huế-2014/README.md
deleted file mode 100644
index 2da9e8e..0000000
--- a/09/Q-Huế-2014/README.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# THI CHỌN HỌC SINH GIỎI CẤP THÀNH PHỐ
-
-UBND THÀNH PHỐ HUẾ
-
-PHÒNG GIÁO DỤC VÀ ĐÀO TẠO
-
-MÔN TIN HỌC - NĂM HỌC: 2013-2014
-
-Thời gian: 120 phút (Không kể thời gian giao đề)
-
-## Bài 1 (3 điểm)
-
-Hai số tự nhiên `n`, `m` được gọi là nguyên tố tương đương nếu chúng có chung
-các ước số nguyên tố.
-
-Hãy viết chương trình nhập vào hai số `n`, `m` và kiểm
-tra chúng có là nguyên tố tương đương với nhau hay không.
-
-**Ví dụ:** Số 75 và số 15 là nguyên tố tương đương vì chúng có cùng các ước số
-nguyên tố là 3 và 5. 
-
-## Bài 2 (3 điểm)
-
-Cho hệ phương trình bậc nhất hai ẩn:
-
-    ax + by = c
-    a'x + b'y = c'
-
-Hãy viết chương trình giải hệ phương trình trên, đồng thời xác định vị trí
-tương đối của hai đường thẳng `d: ax + by = c` và `d': a'x + b'y =c'` đã tạo
-nên hệ phương trình.
-
-## Bài 3 (4 điểm)
-
-Cho hai xâu `X`, `Y` chứa các kí tự số từ 0 đến 9 và không dài quá 250 kí tự.
-
-Hãy viết chương trình tạo ra xâu `ST` thoả mãn các điều kiện sau:
-
-* Gồm các kí tự số vừa có mặt ở xâu `X`, vừa có mặt ở xâu `Y`
-* Các kí tự số trong xâu `ST` chỉ xuất hiện duy nhất một lần
-* Giá trị xâu `ST` nhận được là một số đạt giá trị lớn nhất
-
-Dữ liệu vào cho bởi file `INPUT.INP` chứa giá trị xâu `X` và xâu `Y`, mỗi xâu
-nằm trên một dòng.
-
-Dữ liệu ra chứa ở file `OUTPUT.OUT` là số lớn nhất nhận được.
-
-**Ví dụ:**
-
-| INPUT.INP | OUTPUT.OUT |
-| --------- | ---------- |
-| 19012304  | 43210      |
-| 034012    |            |
diff --git a/09/Q-Huế-2014/bai1.pas b/09/Q-Huế-2014/bai1.pas
deleted file mode 100644
index 7bd0d92..0000000
--- a/09/Q-Huế-2014/bai1.pas
+++ /dev/null
@@ -1,15 +0,0 @@
-var
-  n, m, p: qword;
-
-begin
-  read(n, m);
-
-  while m <> 0 do
-    begin
-      p := n mod m;
-      n := m;
-      m := p
-    end;
-
-  writeln(n <> 1)
-end.
diff --git a/09/Q-Huế-2014/bai2.pas b/09/Q-Huế-2014/bai2.pas
deleted file mode 100644
index 172137d..0000000
--- a/09/Q-Huế-2014/bai2.pas
+++ /dev/null
@@ -1,35 +0,0 @@
-var
-  a, b, c, e, p, k, tmp: real;
-
-function det(a, b, c, d: real): real;
-  begin
-    exit(a * d - b * c)
-  end;
-
-begin
-  read(a, b, c, e, p, k);
-
-  tmp := det(a, b, e, p);
-  
-  if tmp <> 0 then
-    begin
-      writeln('x = ', (det(c, b, k, p) / tmp):0:6);
-      writeln('y = ', (det(a, c, e, k) / tmp):0:6);
-      writeln('Hai đường thẳng cắt nhau.')
-    end
-  else if c <> k then
-    begin
-      writeln('Phương trình vô nghiệm.');
-      writeln('Hai đường thẳng song song.')
-    end
-  else
-    begin
-      if a = 0 then
-        writeln('y = ',  (c / b):0:6)
-      else if b = 0 then
-        writeln('x = ', (c / a):0:6)
-      else
-        writeln('x = ', (-b / a):0:6, 'y + ', (c / a):0:6);
-      writeln('Hai đường thẳng trùng nhau.')
-    end;
-end.
diff --git a/09/Q-Huế-2014/bai3.pas b/09/Q-Huế-2014/bai3.pas
deleted file mode 100644
index 91fc05f..0000000
--- a/09/Q-Huế-2014/bai3.pas
+++ /dev/null
@@ -1,34 +0,0 @@
-var
-  x, y: string;
-  f: text;
-  a: array[0 .. 9] of shortint;
-  b: shortint;
-  c: char;
-
-begin
-  assign(f, 'INPUT.INP');
-  reset(f);
-  readln(f, x);
-  readln(f, y);
-  close(f);
-
-  fillchar(a, 0, sizeof(a));
-
-  for c in x do
-    a[ord(c) - 48] := 1;
-
-  for c in y do
-    begin
-      b := ord(c) - 48;
-      if a[b] = 1 then
-        a[b] := 2
-    end;
-
-  assign(f, 'OUTPUT.OUT');
-  rewrite(f);
-  for b := 9 downto 0 do
-    if a[b] = 2 then
-      write(f, b);
-  writeln(f);
-  close(f)
-end.