<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title></title>
    <description>Personal Blog</description>
    <link>https://hc.io.vn/</link>
    <atom:link href="https://hc.io.vn/feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Fri, 21 Aug 2026 14:36:35 +0000</pubDate>
    <lastBuildDate>Fri, 21 Aug 2026 14:36:35 +0000</lastBuildDate>
    <generator>Jekyll v4.0.1</generator>
    
      <item>
        <title>Phân tích thất bại trong trực quan hóa dữ liệu</title>
        <description>&lt;h1 id=&quot;1-giới-thiệu-ví-dụ&quot;&gt;&lt;strong&gt;1. Giới thiệu ví dụ&lt;/strong&gt;&lt;/h1&gt;

&lt;h2 id=&quot;11-bối-cảnh-ví-dụ&quot;&gt;&lt;strong&gt;1.1. Bối cảnh ví dụ&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Vào tháng 2/2014, bài báo nước ngoài có tên là &lt;strong&gt;Reuters&lt;/strong&gt; đã đăng một biểu đồ thể
hiện số vụ giết người bằng súng tại bang Florida từ năm 1990 – 2012, do một nhà thiết
kế dữ liệu tên là &lt;strong&gt;Christine Chan&lt;/strong&gt; thiết kế và cô dựa trên dữ liệu của &lt;strong&gt;Florida Department
of Law Enforcement&lt;/strong&gt;. Biểu đồ này được tạo ra gắn với một chính sách của bang Florida
vào năm 2005 có tên là &lt;strong&gt;Stand Your Groun&lt;/strong&gt;, chính sách này cho phép người dân có
quyền sử dụng vũ lực gây chết người để tự vệ cho bản thân mà không cần rút lui trước.
Vì thế nên biểu đồ này được tạo ra để người dân có thể thấy được hậu quả của chính
sách này gây ra tác động đến số vụ tự tử bằng súng.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/florida_chart.png&quot; alt=&quot;florida_chart&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;12-vấn-đề-của-biểu-đồ&quot;&gt;&lt;strong&gt;1.2 Vấn đề của biểu đồ&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Khi nhìn mà chưa phân tích kỹ biểu đồ, nhiều người xem hay người đọc có thể nắm được thông tin là từ 2005 thì số vụ giết người bằng súng ở Floria giảm mạnh so với trước đó vì các đường biểu đồ đi hạ xuống dốc như đường thẳng. Nhưng khi các nhà báo và các chuyên gia nhìn và phân tích biểu đồ thì lại nhận thấy trục tung của biểu đồ bị đảo ngược, mốc 0 không nằm ở dưới mà lại bắt đầu ở bên trên và mốc 1000 cũng ngược lại, nên vì thế đường biểu đồ đi xuống là do số vụ tử vong đang tăng lên. Nói một cách dễ hiểu là chiều thể hiện trên biểu đồ hoàn toàn ngược lại, đường đi lên là giảm và đường giảm xuống là tăng, ngược lại với thông tin và phần lớn người xem biểu đồ không phân tích kỹ thì sẽ bị hiểu sai.&lt;/p&gt;

&lt;h1 id=&quot;2-đánh-giá-biểu-đồ-dựa-trên-4-trụ-cột-của-trực-quan-hóa&quot;&gt;&lt;strong&gt;2. Đánh giá biểu đồ dựa trên 4 trụ cột của Trực quan hóa&lt;/strong&gt;&lt;/h1&gt;

&lt;h2 id=&quot;21-hữu-ích&quot;&gt;&lt;strong&gt;2.1. Hữu ích&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Tính hữu ích của biểu đồ gần như là không có, mục tiêu ban đầu của người thiết kế là muốn cho mọi người có thể đánh giá đúng về tác động của chính sách &lt;strong&gt;Stand Your Ground&lt;/strong&gt; đến an toàn của người dẫn ở bang Florida vì đây là một chính sách quan trọng ảnh hướng lớn. Nhưng vì thiết kế biểu đồ bị sai, trục tung bị đảo đi nên hầu như người xem đều kết luận là đạo luật này an toàn và đang làm tốt nhưng thực tế thì lại không, làm cho biểu đồ bị sai mà không có tác dụng, góp phần làm cho mọi người nhận thức sai về hiệu quả của chính sách này.&lt;/p&gt;

&lt;h2 id=&quot;22-hiệu-quả&quot;&gt;&lt;strong&gt;2.2. Hiệu quả&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Biều đồ hoàn toàn không có hiệu quả, mặc dù người thiết kế đã dùng đúng loại biểu đồ cho dữ liệu chuỗi thời gian để người xem có thể dễ đọc và dễ nhìn. Nhưng mà để khi ta truyền tải thông tin cho mọi người và đây còn là một bài báo thì ta không chỉ để dễ đọc và mà thông tin đưa đến phải đúng insight. Ta có thể thấy thông tin tăng giảm được thể hiện trên biểu đồ bị đảo ngược hoàn toàn nên đây là lỗi rất lớn và nghiêm trọng liên quan đến độ hiệu quả của biểu đồ có thể xảy ra.&lt;/p&gt;

&lt;h2 id=&quot;23-mới-mẻ&quot;&gt;&lt;strong&gt;2.3. Mới mẻ&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Biểu đồ có tính sáng tạo nhưng lại khi đặt sai vị trí trên biểu đồ. Người thiết kế lấy ý tưởng từ hiểu ứng của máu khi chảy nhỏ giọt xuống, tiếng anh có tên là &lt;strong&gt;dripping blood&lt;/strong&gt;. Đây là một ý tưởng hay và lạ nhưng tuy nhiên sự mới mẻ khi ta trực quan hóa dữ liệu phải truyền tải người dùng thông tin đúng và rõ ràng, không nên vì sự mới mẻ và ta lại đánh đổi đi sự chính xác của số liệu và thông điệp muốn truyền tải đến người xem.&lt;/p&gt;

&lt;h2 id=&quot;24-thẩm-mỹ&quot;&gt;&lt;strong&gt;2.4. Thẩm mỹ&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Biểu đồ đạt tiêu chí về mặt thẩm mỹ, bắt mắt người xem. Màu đỏ đạm và hiệu ứng vệt máu được tô loang trên biểu đồ và có bố cũng rõ ràng cũng như sự chuyên nghiệp. Nhưng đây cũng là con dao hai lưỡi, bởi vì thông thường khi ta nhìn thấy một biểu đồ được trình bày một cách chỉnh chu, đẹp và bắt mắt ta thường tin tưởng về sự chính xác của biểu đồ, và đây cũng là điều rất nguy hiểm.&lt;/p&gt;

&lt;h1 id=&quot;3-phân-tích-nguyên-nhân-thất-bại&quot;&gt;&lt;strong&gt;3. Phân tích nguyên nhân thất bại&lt;/strong&gt;&lt;/h1&gt;

&lt;h2 id=&quot;31-lỗi-đảo-ngược-trục-y&quot;&gt;&lt;strong&gt;3.1. Lỗi đảo ngược trục Y&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Ta dựa theo quy ước phổ biến trong trực quan hóa dữ liệu, trục tung $Y$ của một biểu đồ định lượng phải được dựng đứng, và mốc số $0$ nằm ở gốc dưới cùng tại giao giao điểm giữa trục tung và trục hoành và sau đó tăng dần lên theo số liệu, và quy ước giống như nhận thức của con người là đường đi lên sẽ tăng và đường đi xuống sẽ giảm. Nhưng trong biểu đồ đã thiết kế đi ngược lại với quy ước này và làm cho mọi người hiểu nhầm do việc bộ não con người đã quen với quy ước của biểu đồ, làm hiểu sai khi ta vẫn biết về nguy tắc đọc trục nếu chỉ nhìn sơ qua mà không để ý kỹ.&lt;/p&gt;

&lt;h2 id=&quot;32-so-sánh-với-các-loại-lỗi-trực-quan-hóa-phổ-biến&quot;&gt;&lt;strong&gt;3.2. So sánh với các loại lỗi trực quan hóa phổ biến&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Trục $Y$ trong biểu đồ về bản chất là một biến định lượng liên tục, giá trị càng lớn thì càng cao. Tuy nhiên, thay vì đặt đúng như quy ước thì người thiết kế lại xử lý trục này để làm tăng tính thẩm mỹ, trang trí cho biểu đồ nhằm mô phỏng một vệt máu đang chảy xuống, không tuân theo quy ước của biểu đồ có trục số liệu. Dạng lỗi của biểu đồ tương tự giống nhóm lỗi ép định dạng làm sai bản chất của dữ liệu giống như ví dụ &lt;strong&gt;“bảng tuần hoàn trái cây”&lt;/strong&gt; khi ta cố gắng đem một đối tượng khác bản chất với đối tượng được trực quan hiện tại thay thế, và điều này làm cho mục đích của biểu đồ thay vì cung cấp thông tin chính xác cho người xem thì lại giống như một bức tranh để trưng bày, tác dụng của biểu đồ đem lại gần như bằng $0$.&lt;/p&gt;

&lt;h2 id=&quot;33-yếu-tố-làm-vấn-đề-nghiêm-trọng-hơn&quot;&gt;&lt;strong&gt;3.3. Yếu tố làm vấn đề nghiêm trọng hơn&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Yếu tố đầu tiền là biểu đồ không chú thích trước cho người dùng biết khi đã thay đổi vị trí của trục $Y$ được đặt theo chiều ngược lại, làm cho người xem không có cách nào để có thể nhận biết chính xác trừ khi nhìn rõ số liệu trên trục tung. Yếu tố thứ hai là việc trình bày biểu đồ theo một mảng đỏ dạng vệt máu, làm người xem tin và ấn tượng, không kiểm tra kỹ về số liệu. Yếu tố thứ ba là yếu tố chính trị vì nó liên quan đến một chính sách gây tranh cãi, biểu đồ liên quan đến vấn đề nhạy cảm chính là xu hướng tử vong, làm ảnh hưởng đến nhận thức của người dân về chính sách. Mặc dù người thiết kế cho biết đây là một lựa chọn thẩm mỹ cá nhân nhưng dù cố tình hay vô tình thì hậu quả khi người dùng đọc được là như nhau.&lt;/p&gt;

&lt;h1 id=&quot;4-đề-xuất-giải-pháp-cải-tiến-để-chuyển-đổi-từ-nhiễu-noise-sang-tín-hiệu-signal&quot;&gt;&lt;strong&gt;4. Đề xuất giải pháp cải tiến để chuyển đổi từ “Nhiễu (Noise)” sang “Tín hiệu (Signal)”&lt;/strong&gt;&lt;/h1&gt;

&lt;h2 id=&quot;41-các-đề-xuất-cải-tiến&quot;&gt;&lt;strong&gt;4.1. Các đề xuất cải tiến&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Đưa trục $Y$ giống như các biểu đồ trực quan hóa, giá trị $0$ đặt ở gốc dưới cùng, và tăng dần lên trên, đúng với quy ước và phản xạ đọc biểu đồ tự nhiên của người đọc. Nếu muốn giữ hiệu ứng như vệt máu thì ta chỉ nên thay đổi màu sắc, hướng đổ bóng hoặc vị trí đặt biểu đồ (như việc đặt biểu đồ nằm ngang), và không được đảo chiều trục của biểu đồ.&lt;/p&gt;

&lt;p&gt;Bổ sung chú thích của biểu đồ rõ ràng ngay trên biểu đồ để cho người dùng biết khi ta trình bày theo kiểu đặc biệt. Ví dụ ta chú chú thích: “Trục $Y$ đọc từ dưới lên: càng lên cao giá trị càng giảm”.
Kiểm tra chéo với đồng nghiệp trước khi ta công bố: một người mới khi nhìn vào họ sẽ quan sát được bao quát được nội dung biểu đồ và mô tả lại những thông tin gì họ vừa đọc được để có thể tìm ra lỗi sai.
Sử dụng đường trung bình trượt nếu dữ liệu của ta có sự dao động mạnh, để người xem có thể nhận ra xu hướng dài hạn của biểu đồ thay vì bị phân tán đến các đỉnh ngắn hạn.&lt;/p&gt;

&lt;h2 id=&quot;42-biểu-đồ-minh-họa-sau-khi-chỉnh-sửa&quot;&gt;&lt;strong&gt;4.2. Biểu đồ minh họa sau khi chỉnh sửa&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/florida_chart_edited.png&quot; alt=&quot;florida_chart_edited&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;43-kết-luận&quot;&gt;&lt;strong&gt;4.3. Kết luận&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Sau khi phân tích biểu đồ &lt;strong&gt;Gun Death in Florida&lt;/strong&gt; ta có thể rút ra được kinh nghiệm rằng trục biểu đồ không phải là thành phần mang tính trang trí và là một quy ước giúp để người đọc hiểu người thiết kế truyền tải thông tin. Khi làm sai với quy ước thì dù người thiết kế vô tình hay cố tình thì hậu quả là người xem kết luận sai và trái ngược lại với thực tế, và nó sẽ nguy hiểm nếu là biểu đồ có dữ liệu quan trọng hoặc nhạy cảm. Làm biểu đồ đẹp hơn thì tốt nhưng ta phải làm sao để không làm ảnh hưởng đến tính chính xác của biểu đồ.&lt;/p&gt;

&lt;h1 id=&quot;tài-liệu-tham-khảo&quot;&gt;&lt;strong&gt;Tài liệu tham khảo&lt;/strong&gt;&lt;/h1&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;https://www.livescience.com/45083-misleading-gun-death-chart.html&quot;&gt;LiveScience (2014). &lt;em&gt;Misleading Gun-Death Chart Draws Fire&lt;/em&gt;.&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;https://psmag.com/news/mislead-charts-stand-ground-laws-gun-deaths-79726/&quot;&gt;Pacific Standard (2014). &lt;em&gt;How to Mislead With Charts: Stand Your Ground Laws and Gun Deaths in Florida&lt;/em&gt;.&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Misleading_graph&quot;&gt;Wikipedia. &lt;em&gt;Misleading graph&lt;/em&gt;.&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;
</description>
        <pubDate>Fri, 21 Aug 2026 00:00:00 +0000</pubDate>
        <link>https://hc.io.vn/2026/phan-tich-that-bai-trong-truc-quan-hoa-du-lieu/</link>
        <guid isPermaLink="true">https://hc.io.vn/2026/phan-tich-that-bai-trong-truc-quan-hoa-du-lieu/</guid>
        
        
      </item>
    
      <item>
        <title>Giải đề KTLT UTE 24-25</title>
        <description>&lt;p&gt;Chào mọi người, hôm nay mình rảnh không có gì làm nên mới lôi lại cái đề thi kỹ thuật lập trình hồi năm nhất thi ra giải.&lt;/p&gt;

&lt;p&gt;Lúc đó, mình còn gà lắm, giải được cũng chỉ được 1 bài thôi, hên trong lúc thi có bạn bè chỉ, rồi mình cũng đem bài đó đi cứu mấy đứa khác :)). Vì lúc đó làm không được nên hôm nay quyết tâm ngồi giải thử mình có thể giải được bao nhiêu bài.&lt;/p&gt;

&lt;p&gt;Bắt đầu với bài 1 nhé:&lt;/p&gt;

&lt;h2 id=&quot;bài-1-3-điểm&quot;&gt;&lt;strong&gt;Bài 1: (3 điểm)&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Cho mảng $a$ gồm $n$ số nguyên với $a[i]$ biểu diễn hệ số của $x^i$ trong đa thức:&lt;/p&gt;

\[f(x) = \sum_{i=0}^{n-1} a[i]*x^i\]

&lt;p&gt;và mảng $b$ gồm $m$ số nguyên với $b[j]$ biểu diễn hệ số của $x^j$ trong đa thức:&lt;/p&gt;

\[g(x) = \sum_{j=0}^{m-1} b[j]*x^j\]

&lt;p&gt;Viết chương trình in ra mảng $c$ với $c[i]$ biểu diễn hệ số của tích hai đa thức trên sau khi đã rút gọn&lt;/p&gt;

\[h(x) = f(x) * g(x) = (\sum_{i=0}^{n-1} a[i]*x^i) * (\sum_{j=0}^{m-1} b[j]*x^j) = \sum_{k=0}^{p} c[k]*x^k\]

&lt;p&gt;&lt;strong&gt;Dữ liệu vào:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng đầu tiên gồm $n$ và $m$ là số phần tử của mảng $a$ và $b$&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Hai dòng tiếp theo, mỗi dòng là các phần tử của mảng $a$ và $b$&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu ra:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Các phần tử của mảng $c$&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Ràng buộc:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;$1 &amp;lt;= m, n &amp;lt;= 20$&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;$-10 &amp;lt;= a[i], b[i] &amp;lt;= 10$&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th&gt;Dữ liệu vào&lt;/th&gt;
      &lt;th&gt;Dữ liệu ra&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;Ví dụ&lt;/td&gt;
      &lt;td&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;3 4&lt;/code&gt;&lt;br /&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;1 0 1&lt;/code&gt;&lt;br /&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;1 2 0 1&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;1 2 1 3 0 1&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Giải thích&lt;/td&gt;
      &lt;td&gt;$f(x) = 1 + x^2,\quad g(x) = 1 + 2x + x^3$&lt;br /&gt;$h(x) = (1 + x^2)(1 + 2x + x^3) = 1 + 2x + x^2 + 3x^3 + x^5$&lt;/td&gt;
      &lt;td&gt; &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h3 id=&quot;cách-giải&quot;&gt;&lt;strong&gt;Cách giải:&lt;/strong&gt;&lt;/h3&gt;

&lt;div class=&quot;language-cpp highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;cm&quot;&gt;/**
 *    newbie: ndhoc
 *    created: 2026-06-08 20:32:29
**/&lt;/span&gt;
&lt;span class=&quot;cp&quot;&gt;#include&lt;/span&gt; &lt;span class=&quot;cpf&quot;&gt;&amp;lt;bits/stdc++.h&amp;gt;&lt;/span&gt;&lt;span class=&quot;cp&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;namespace&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;std&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;

&lt;span class=&quot;cp&quot;&gt;#define ll long long
&lt;/span&gt;
&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(){&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;ios_base&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sync_with_stdio&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cin&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;tie&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
    &lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cin&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;vector&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;

    &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cin&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;];&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cin&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;];&lt;/span&gt;   
    
    &lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;p&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;vector&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;

    &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;];&lt;/span&gt;
        &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;

    &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cout&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&quot; &quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;bài-2-4-điểm&quot;&gt;&lt;strong&gt;Bài 2: (4 điểm)&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Cho ma trận $a$ kích thước $m * n$ $(2 &amp;lt; m, n &amp;lt; 50)$ gồm các số nguyên dương. Cho biết $a[i][j]$ mô tả giá thuê vị trí $(i, j)$ để đặt gian hàng $(a &amp;lt; a[i][j] &amp;lt; 100)$. Một công ty cần thuê 4 gian hàng cạnh nhau theo hàng ngang, hoặc theo hàng dọc, hoặc theo ô vuông $2*2$. Cho biết số tiền tối thiểu công ty phải trả để thuê được gian hàng theo mong muốn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu vào:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng đầu tiên là hai số nguyên dương, lần lượt là $m, n$ biểu diễn theo kích thước của ma trận $a$ ($m$ dòng, $n$ cột).&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;$m$ dòng tiếp theo, mỗi dòng là n số nguyên (mỗi số cách nhau một khoảng
trắng) lần lượt là n phần tử của từng dòng tương ứng của ma trận.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu ra:&lt;/strong&gt; Số tiền tối thiểu công ty phải trả để thuê được 4 gian hàng theo yêu cầu.&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th&gt;Dữ liệu vào&lt;/th&gt;
      &lt;th&gt;Dữ liệu ra&lt;/th&gt;
      &lt;th&gt;Giải thích&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;Ví dụ&lt;/td&gt;
      &lt;td&gt;3     4&lt;br /&gt;9     4     5     9&lt;br /&gt;2     &lt;strong&gt;6&lt;/strong&gt;     &lt;strong&gt;2&lt;/strong&gt;     8&lt;br /&gt;5     &lt;strong&gt;7&lt;/strong&gt;     &lt;strong&gt;1&lt;/strong&gt;     6&lt;/td&gt;
      &lt;td&gt;16&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/td&gt;
      &lt;td&gt;Số tiền tối thiểu công ty phải trả là khi thuê các gian hàng được in đậm ở mảng trên.&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h3 id=&quot;cách-giải-1&quot;&gt;&lt;strong&gt;Cách giải:&lt;/strong&gt;&lt;/h3&gt;

&lt;h2 id=&quot;bài-3-15-điểm&quot;&gt;&lt;strong&gt;Bài 3: (1.5 điểm)&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Cho mảng $a$ gồm $n$ số nguyên. Cho biết số phần tử tối thiểu mà tổng của chúng lớn hơn tổng các phần tử còn lại của mảng.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu vào:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng đầu tiên gồm số nguyên dương $n$ là phần tử của mảng $a$.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng tiếp theo gồm $n$ số nguyên lần lượt là giá trị của các phần tử trong mảng.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu ra:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Số phần tử tối thiểu theo mô tả trên.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Ràng buộc:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;$1 &amp;lt;= n &amp;lt;= 100$&lt;/li&gt;
  &lt;li&gt;$-100 &amp;lt;= a[i] &amp;lt;= 100$&lt;/li&gt;
&lt;/ul&gt;

&lt;table&gt;
  &lt;tr&gt;
    &lt;th&gt;&lt;/th&gt;
    &lt;th&gt;Dữ liệu vào&lt;/th&gt;
    &lt;th&gt;Dữ liệu ra&lt;/th&gt;
  &lt;/tr&gt;

  &lt;tr&gt;
    &lt;td&gt;&lt;b&gt;Ví dụ&lt;/b&gt;&lt;/td&gt;
    &lt;td&gt;
      4&lt;br /&gt;
      4 2 5 1
    &lt;/td&gt;
    &lt;td&gt;2&lt;/td&gt;
  &lt;/tr&gt;

  &lt;tr&gt;
    &lt;td&gt;&lt;b&gt;Giải thích&lt;/b&gt;&lt;/td&gt;
    &lt;td colspan=&quot;2&quot;&gt;
      Tập con {4, 5} hoặc {2, 5} là các tập con có 2 phần tử mà tổng của chúng
      lớn hơn tổng các phần tử còn lại. Tập con chỉ một phần tử có tổng lớn
      nhất là 5, bé hơn tổng các phần tử còn lại là 7.
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;h3 id=&quot;cách-giải-2&quot;&gt;&lt;strong&gt;Cách giải:&lt;/strong&gt;&lt;/h3&gt;

&lt;h2 id=&quot;bài-4-15-điểm&quot;&gt;&lt;strong&gt;Bài 4: (1.5 điểm)&lt;/strong&gt;&lt;/h2&gt;

&lt;p&gt;Cho biết bạn có thể thực hiện một trong hai thao tác sau nhiều lần trên mảng $a$ gồm $n$ số nguyên.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Chọn $a[i]$, bạn thu được $a[i]$ điểm&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Chọn $a[i]$ và $a[i+1]$, thu được $a[i]*a[i+1]$ điểm&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Khi một số đã được chọn, nó sẽ bị bỏ ra và không thể được chọn lại. Bạn cần
thực hiện các thao tác sao cho số điểm đạt được là lớn nhất.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu vào:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng đầu tiên gồm số nguyên dương $n$ là phần tử của mảng $a$.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Dòng tiếp theo gồm $n$ số nguyên lần lượt là giá trị của các phần tử trong mảng.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dữ liệu ra:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Điểm số lớn nhất có thể đạt được (bạn có thể không chọn một số phần tử).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Ràng buộc:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;$1 &amp;lt;= n &amp;lt;= 100$&lt;/li&gt;
  &lt;li&gt;$-9 &amp;lt;= a[i] &amp;lt;= 9$&lt;/li&gt;
&lt;/ul&gt;

&lt;table&gt;
  &lt;tr&gt;
    &lt;th&gt;&lt;/th&gt;
    &lt;th&gt;Dữ liệu vào&lt;/th&gt;
    &lt;th&gt;Dữ liệu ra&lt;/th&gt;
  &lt;/tr&gt;

  &lt;tr&gt;
    &lt;td&gt;&lt;b&gt;Ví dụ&lt;/b&gt;&lt;/td&gt;
    &lt;td&gt;
      9&lt;br /&gt;&lt;br /&gt;
      -4 1 1 8 7 3 -3 -2 2
    &lt;/td&gt;
    &lt;td&gt;69&lt;/td&gt;
  &lt;/tr&gt;

  &lt;tr&gt;
    &lt;td&gt;&lt;b&gt;Giải thích&lt;/b&gt;&lt;/td&gt;
    &lt;td colspan=&quot;2&quot;&gt;
      Bạn sẽ lần lượt chọn a[1], a[2], (a[3], a[4]), a[5], (a[6], a[7]), và a[8].&lt;br /&gt;
      Điểm số thu được là 1 + 1 + 8 * 7 + 3 + (-3) * (-2) + 2 = 69.
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;h3 id=&quot;cách-giải-3&quot;&gt;&lt;strong&gt;Cách giải:&lt;/strong&gt;&lt;/h3&gt;

</description>
        <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
        <link>https://hc.io.vn/2026/ktlt-ute-2425/</link>
        <guid isPermaLink="true">https://hc.io.vn/2026/ktlt-ute-2425/</guid>
        
        
      </item>
    
      <item>
        <title>Hello World!</title>
        <description>&lt;p&gt;Hello World, đây là post đầu tiên trên blog của tôi :).&lt;/p&gt;

&lt;p&gt;Dưới đây là ví dụ công thức Toán viết bằng LaTeX:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Công thức cùng dòng (inline): $E = mc^2$ hoặc $a^2 + b^2 = c^2$.&lt;/li&gt;
  &lt;li&gt;Công thức khối riêng biệt (block):
\(\int_{a}^{b} x^2 dx = \left[ \frac{x^3}{3} \right]_{a}^{b}\)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dưới đây là một đoạn code Python mẫu:&lt;/p&gt;
&lt;div class=&quot;language-python highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;hello_world&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;():&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;print&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;Xin chào từ hcblog!&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;bp&quot;&gt;True&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Và đây là một hình ảnh mẫu (bạn có thể bấm vào hình ảnh để xem ảnh phóng to):&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/author.jpg&quot; alt=&quot;Hình ảnh tác giả&quot; /&gt;&lt;/p&gt;

</description>
        <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
        <link>https://hc.io.vn/2026/hello-world/</link>
        <guid isPermaLink="true">https://hc.io.vn/2026/hello-world/</guid>
        
        
      </item>
    
  </channel>
</rss>
