Một số được gọi là “đối xứng” nếu đọc từ trái sang phải hay từ phải sang trái đều giống nhau. Từ các chữ số 0, 2, 3, 7 lập được bao nhiêu số “đối xứng” có 4 chữ số? Ví dụ: 234432 là một số “đối xứng”
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
![](https://rs.olm.vn/images/avt/0.png?1311)
![](https://rs.olm.vn/images/avt/0.png?1311)
Program HOC24;
var m,i,n: longint;
d1,d2,d3: integer;
function dx(x: longint): boolean;
var j: longint;
s,s1: string;
begin
s1:=''; dx:=false;
str(x,s);
for j:=length(s) downto 1 do
s1:=s1+s[j];
if s=s1 then dx:=true else exit;
end;
function cp(k: longint): boolean;
begin
cp:=false;
if k=sqr(trunc(sqrt(k))) then cp:=true else exit;
end;
begin
write('Nhap M; N: '); readln(m,n);
d1:=0; d2:=0; d3:=0;
if (m<n) and (m>=10) and (n<=100000) then
begin
write('Cac so doi xung la: ');
for i:=m to n do
if dx(i) then
begin
d1:=d1+1;
write(i,' ');
end;
writeln;
writeln('Co ',d1,' so doi xung');
write('Cac so chinh phuong la: ');
for i:=m to n do
if cp(i) then
begin
d2:=d2+1;
write(i,' ');
end;
writeln;
writeln('Co ',d2,' so chinh phuong');
write('Cac so doi xung chinh phuong la: ');
for i:=m to n do
if dx(i) and cp(i) then
begin
d3:=d3+1;
write(i,' ');
end;
writeln;
write('Co ',d3,' so doi xung chinh phuong');
end;
readln
end.
![](https://rs.olm.vn/images/avt/0.png?1311)
program superSymmetricalSubstring;
var
s: string;
function isSymmetrical(str: string): boolean;
var
i, len: integer;
begin
len := length(str);
for i := 1 to len div 2 do
begin
if str[i] <> str[len - i + 1] then
begin
exit(false);
end;
end;
exit(true);
end;
function countSuperSymmetricalSubstrings(s: string): integer;
var
i, j, len, count: integer;
begin
len := length(s);
count := 0;
for i := 1 to len do
begin
for j := 2 to len - i + 1 do
begin
if isSymmetrical(copy(s, i, j)) then
begin
count := count + 1;
end;
end;
end;
count := count + len;
exit(count);
end;
begin
write('Nhap xau S: ');
readln(s);
writeln('So xau con sieu doi xung cua S: ', countSuperSymmetricalSubstrings(s));
readln;
end.
![](https://rs.olm.vn/images/avt/0.png?1311)
Dưới đây là một ví dụ về cách giải quyết bài toán này bằng ngôn ngữ Pascal:
function isPalindrome(s: string): boolean; var i, n: integer; begin n := Length(s); for i := 1 to n div 2 do begin if s[i] <> s[n - i + 1] then begin Result := false; Exit; end; end; Result := true; end; function countSuperPalindromes(s: string): integer; var i, j, n: integer; subStr: string; begin n := Length(s); Result := 0; // Đếm số xâu con đối xứng for i := 1 to n do begin subStr := ''; for j := i to n do begin subStr := subStr + s[j]; if isPalindrome(subStr) then Inc(Result); end; end; // Đếm số xâu con siêu đối xứng for i := 1 to n - 1 do begin subStr := ''; for j := i to n do begin subStr := subStr + s[j]; if isPalindrome(subStr) then Inc(Result); end; end; end; var s: string; begin s := 'ababcb'; writeln(countSuperPalindromes(s)); end.Kết quả của ví dụ trên sẽ là 3, tương ứng với 3 xâu con siêu đối xứng của xâu "ababcb" là "aba", "bcb", và "ababcb".
Lưu ý rằng đây chỉ là một cách giải quyết bài toán và có thể tồn tại các cách giải khác.
![](https://rs.olm.vn/images/avt/0.png?1311)
#include <bits/stdc++.h>
using namespace std;
string st;
int d,i;
bool kt;
int main()
{
getline(cin,st);
kt=true;
d=st.length();
for (i=0; i<=d-1; i++)
if (st[i]!=st[d-i-1]) kt=false;
if (kt==true) cout<<"YES";
else cout<<"NO";
return 0;
}
![](https://rs.olm.vn/images/avt/0.png?1311)
giả sử số đối xứng là abba,a khác 0.
abba = 1000a +100b+10b+a = 1001a+110b
do 1001 chia hết cho 7 nên abba chia hết cho 7 khi 110b chia hết cho 7 hay b chia hết cho 7. Từ đó suy ra b=0 hoặc b=7.ứng với mỗi giá trị của b có 9 giá trị của a. Vậy có 18 số cần tìm.
Gọi n=xyyx(x,ý là các chữ số x khác 0) lá số đối xứng có 4 chữ số chia hết cho 7.
Vậy n=1000x+100y+10y+n= 1001x+110y.
mà 1001x= 7.143.x chia cho 7. Do đó n chia hết cho 7.
Suy ra y chia hết cho 7(mà 110 k chia hết cho 7).
Vậy ý="0,7". Suy ra từ 1000 đến 9999ta có 9.2=18(số) chia hạt cho 7
![](https://rs.olm.vn/images/avt/0.png?1311)
Các số có tính chất trên xếp thành một dãy số cách đều "Đặc biệt" vừa cách đều giữa các số trong cùng 1 nhóm, vừa cách đều giữa các nhóm.
Nên ta có thể tính tổng theo quy tắc của dãy số cách đều: Tổng = TBC x Số các số hạng.
Vậy Tổng của các số có tính chất như trên là: (1001 + 9999) : 2 x 90 = 495 000
ĐS: 495000
Tick nhé
Đáp án:
12 số
Giải thích các bước giải:
Theo đề bài, ta sẽ liệt kê được các số:
3003; 3333; 3553; 3663; 5005; 5335; 5555; 5665; 6006; 6336; 6556; 6666
Vậy đáp án là 12 số.
thank