Đến nội dung

Hình ảnh

Có bao nhiêu số siêu tốt

- - - - -

  • Please log in to reply
Chủ đề này có 6 trả lời

#1
chuyenndu

chuyenndu

    Trung sĩ

  • Thành viên
  • 177 Bài viết

Một số nguyên dương được gọi là tốt nếu như chữ số đầu tiên và chữ số tận cùng của số đó bằng nhau. Ví dụ 4 và 2022 là các số tốt, nhưng 10 không là số tốt. Một số tốt được gọi là siêu tốt nếu nó có thể viết được dưới dạng tổng của 2 số tốt khác. Ví dụ 101 = 99+2 và 22 = 11+11 là các số siêu tốt, còn 111 là số tốt nhưng không là số siêu tốt. Hỏi có bao nhiêu số siêu tốt có 4 chữ số

 

bài này code sao vậy ạ



#2
perfectstrong

perfectstrong

    $LOVE(x)|_{x =\alpha}^\Omega=+\infty$

  • Quản lý Toán Ứng dụng
  • 4990 Bài viết

Bạn muốn hỏi về code hay về toán?

Bạn chia các trường hợp ra:

\[\begin{gathered}
  \overline {abba}  + \overline {cddc}  \hfill \\
  \overline {abba}  + \overline {cdc}  \hfill \\
  \overline {abba}  + \overline {cc}  \hfill \\
  \overline {abba}  + \overline c  \hfill \\
  \overline {aba}  + \overline {cdc}  \hfill \\
  \overline {aba}  + \overline {cc}  \hfill \\
  \overline {aba}  + \overline c  \hfill \\
\end{gathered} \]


Luôn yêu để sống, luôn sống để học toán, luôn học toán để yêu!!! :D
$$\text{LOVE}\left( x \right)|_{x = \alpha}^\Omega = + \infty $$
I'm still there everywhere.

#3
chuyenndu

chuyenndu

    Trung sĩ

  • Thành viên
  • 177 Bài viết

em muốn hỏi về code, không biết là nếu đề bài hỏi số siêu tốt có n chữ số thì xử lí như nào

làm như anh thì thiếu trường hợp như abca



#4
perfectstrong

perfectstrong

    $LOVE(x)|_{x =\alpha}^\Omega=+\infty$

  • Quản lý Toán Ứng dụng
  • 4990 Bài viết

À, mình nhầm với số palindrome. Trước khi vào code thì phải làm chút toán để tìm hiểu tính chất của một số siêu tốt \[A = \overline {aXa}  + \overline {bYb} \]

Bạn đã có ý tưởng gì chưa?


Luôn yêu để sống, luôn sống để học toán, luôn học toán để yêu!!! :D
$$\text{LOVE}\left( x \right)|_{x = \alpha}^\Omega = + \infty $$
I'm still there everywhere.

#5
perfectstrong

perfectstrong

    $LOVE(x)|_{x =\alpha}^\Omega=+\infty$

  • Quản lý Toán Ứng dụng
  • 4990 Bài viết

Lâu lâu suy nghĩ một tí: xét một số tự nhiên $x = \overline{a_1a_2\ldots a_n}$ có $n$ chữ số.

TH1: Nếu $a_1 < a_n$ thì ta có thể viết $x$ thành tổng 2 số tốt như sau:

\[ x = \overline{a_1 a_2 \ldots a_{n-1} a_1} + (a_n - a_1) \]

TH2: $a_1 = a_n$.

TH2.1: Nếu $a_1=a_n > 1$ thì ta có thể viết $x$ lại thành \[x = \overline {\left( {{a_1} - 1} \right){a_2}...{a_{n - 1}}\left( {{a_1} - 1} \right)}  + \overline {1\underbrace {0...0}_{n - 2}1} \]

TH2.2: Nếu $a_1=a_n=1$

TH2.2.1: Nếu $\overline {{a_2}...{a_{n - 1}}}  = 0 \Rightarrow x = \overline {\underbrace {9...9}_{n - 1}}  + 2$

TH2.2.2: Nếu $\overline {{a_2}...{a_{n - 1}}}  = 1 \Rightarrow x = 111$: ta không tìm được cách nào để viết thành tổng hai số tốt, nên $111$ không phải số siêu tốt.

TH2.2.3: Nếu $\overline {{a_2}...{a_{n - 1}}} \ge 2$

 

 

To be continued :D


Luôn yêu để sống, luôn sống để học toán, luôn học toán để yêu!!! :D
$$\text{LOVE}\left( x \right)|_{x = \alpha}^\Omega = + \infty $$
I'm still there everywhere.

#6
chanhquocnghiem

chanhquocnghiem

    Thiếu tá

  • Thành viên
  • 2494 Bài viết

Một số nguyên dương được gọi là tốt nếu như chữ số đầu tiên và chữ số tận cùng của số đó bằng nhau. Ví dụ 4 và 2022 là các số tốt, nhưng 10 không là số tốt. Một số tốt được gọi là siêu tốt nếu nó có thể viết được dưới dạng tổng của 2 số tốt khác. Ví dụ 101 = 99+2 và 22 = 11+11 là các số siêu tốt, còn 111 là số tốt nhưng không là số siêu tốt. Hỏi có bao nhiêu số siêu tốt có 4 chữ số

 

bài này code sao vậy ạ

Các số siêu tốt lập được có dạng $\overline{axya}$ ($a,x,y\in \mathbb{N}$ ; $1\leqslant a\leqslant 9$ ; $0\leqslant x,y\leqslant 9$)

$\textbf{TH1}$ ($2\leqslant a\leqslant 9$)

  Ta có thể viết $\overline{axya}=\overline{(a-1)xy(a-1)}+\overline{1001}\Rightarrow \overline{axya}$ là số siêu tốt với mọi $\overline{xy}$ từ $\overline{00}$ đến $\overline{99}$

  + Chọn $a$ : $8$ cách.

  + Chọn $\overline{xy}$ : $100$ cách.

  $\Rightarrow$ TH1 có $800$ số siêu tốt.

$\textbf{TH2}$ ($a=1$)

  a) $\overline{1xy1}=\overline{22}+\overline{9z9}$ : Có $3$ giá trị $\overline{xy}$ thỏa mãn (từ $\overline{00}$ đến $\overline{02}$)

  b) $\overline{1xy1}=\overline{2u2}+\overline{9v9}$ : Có $19$ giá trị $\overline{xy}$ thỏa mãn (từ $\overline{11}$ đến $\overline{29}$)

  $\Rightarrow$ TH2 có $22$ số siêu tốt.

Vậy có tổng cộng $822$ số siêu tốt có $4$ chữ số.
 


...

Ðêm nay tiễn đưa

Giây phút cuối vẫn còn tay ấm tay
Mai sẽ thấm cơn lạnh khi gió lay
Và những lúc mưa gọi thương nhớ đầy ...

 

http://www.wolframal...-15)(x^2-8x+12)


#7
perfectstrong

perfectstrong

    $LOVE(x)|_{x =\alpha}^\Omega=+\infty$

  • Quản lý Toán Ứng dụng
  • 4990 Bài viết

Các số siêu tốt lập được có dạng $\overline{axya}$ ($a,x,y\in \mathbb{N}$ ; $1\leqslant a\leqslant 9$ ; $0\leqslant x,y\leqslant 9$)

$\textbf{TH1}$ ($2\leqslant a\leqslant 9$)

  Ta có thể viết $\overline{axya}=\overline{(a-1)xy(a-1)}+\overline{1001}\Rightarrow \overline{axya}$ là số siêu tốt với mọi $\overline{xy}$ từ $\overline{00}$ đến $\overline{99}$

  + Chọn $a$ : $8$ cách.

  + Chọn $\overline{xy}$ : $100$ cách.

  $\Rightarrow$ TH1 có $800$ số siêu tốt.

$\textbf{TH2}$ ($a=1$)

  a) $\overline{1xy1}=\overline{22}+\overline{9z9}$ : Có $3$ giá trị $\overline{xy}$ thỏa mãn (từ $\overline{00}$ đến $\overline{02}$)

  b) $\overline{1xy1}=\overline{2u2}+\overline{9v9}$ : Có $19$ giá trị $\overline{xy}$ thỏa mãn (từ $\overline{11}$ đến $\overline{29}$)

  $\Rightarrow$ TH2 có $22$ số siêu tốt.

Vậy có tổng cộng $822$ số siêu tốt có $4$ chữ số.
 

À, em quên mất "số siêu tốt" phải là "số tốt" trước đã :D

Em bổ sung tí code để kiểm chứng cho anh:

function isGood(n) {
  return n > 0 && n % 10 + "" === (n + "")[0];
}

function isSuperGood(n, printFirst) {
	if (!isGood(n)) return false;
  var test = false;
  for (var i = 1; i <= n / 2; i++) {
    if (isGood(i) && isGood(n - i)) {
      test = true;
      if (!!printFirst) console.log(n + " = " + i + " + " + (n - i));
      break;
    }
  }
  return test;
}
var lb = 1000;
var ub = 9999;
var count = 0;
for (var n = lb; n <= ub; n++)
  if (isSuperGood(n)) count++;
console.log("count([" + lb + ", " + "ub]) = " + count);

https://jsfiddle.net/mx4t5298/1/


Luôn yêu để sống, luôn sống để học toán, luôn học toán để yêu!!! :D
$$\text{LOVE}\left( x \right)|_{x = \alpha}^\Omega = + \infty $$
I'm still there everywhere.




1 người đang xem chủ đề

0 thành viên, 1 khách, 0 thành viên ẩn danh