K
Khách

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.

7 tháng 9 2023

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.

7 tháng 9 2023

nó chạy ko ra bạn ơi

 

30 tháng 6 2023

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.

30 tháng 6 2023

sao mình chạy nó ra 12 v bạn

 

3 tháng 3 2021

program bai_10_chuong_4;

uses crt;

var

s: string[100];

i, dem: integer;

Begin

clrscr;

write('Nhap xau vao:'); readln(s); dem:= 0;

for i:= 1 to length(s) do

if ('0'<=s[i]) and(s[i]<=’9') then dem:=dem+l;

Writeln('Trong xau s co '»dem,' chu so thap phan');

readln;

End.

 

uses crt;

var st:string[100];

i,d,kt:integer;

begin

clrscr;

write('Nhap xau:'); readln(st);

kt:=0;

for i:=1 to length(st) do

if st[i]<>st[length(st)-i+1] then kt:=1;

if kt=0 then write('Xau doi xung')

else writeln('Xau khong doi xung');

readln;

end.

31 tháng 10 2021

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string st;
    int dai,i,kt;
    cout<<"Nhap chuoi:"; getline(cin,st);
    dai=st.length();
    kt=0;
    for (int i=0;i<dai;i++)
        if (st[i]!=st[dai-i-1]) kt=1;
    if (kt==0) cout<<"YES";
    else cout<<"NO";
    return 0;
}

 

10 tháng 11 2021

giúp mk thêm 1 câu nx đk?

Xâu đối xứngCho một xâu ký tự SS chỉ gồm các chữ cái thường a..z. Xâu đối xứng là xâu kí tự mà khi viết từ phải qua trái hay từ trái qua phải thì xâu đó không thay đổi. Ví dụ: madammadam, ioiioi là các xâu đối xứng.Yêu cầu: Với xâu ký tự SS cho trước, hãy tính số ký tự bỏ đi ít nhất để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.Ví dụ:Cho xâu aammmda thì cần bỏ 2 ký tự a và m thì xâu...
Đọc tiếp

Xâu đối xứng

Cho một xâu ký tự SS chỉ gồm các chữ cái thường a..z. Xâu đối xứng là xâu kí tự mà khi viết từ phải qua trái hay từ trái qua phải thì xâu đó không thay đổi. Ví dụ: madammadam, ioiioi là các xâu đối xứng.

Yêu cầu: Với xâu ký tự SS cho trước, hãy tính số ký tự bỏ đi ít nhất để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Ví dụ:

Cho xâu aammmda thì cần bỏ 2 ký tự a và m thì xâu còn lại là ammda và xếp lại thành madam là xâu đối xứng.

Cho xâu aaabbcc thì không cần bỏ ký tự thì xâu đó xếp lại thành bcaaacb là xâu đối xứng.

Dữ liệu vào

Đọc từ file văn bản XAUDX.INP chứa một xâu ký tự SS có nn ký tự (n≤105n≤105) chỉ gồm các ký tự chữ cái thường a..z.

Kết quả

Ghi ra file văn bản XAUDX.OUT một số nguyên là số lượng ký ít nhất cần bỏ để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Sample Input 1

 

aammmda

Sample Output 1

 

2

Sample Input 2

 

aaabbcc

Sample Output 2

0

Lưu ý :Dùng C++

 

1

#include<bits/stdc++.h>
using namespace std;
int main(){
long long i,dem[1000],d;
string s;
cin >>s;
for(i=0;i<s.size();i++)
    dem[s[i]]++;
d=0;
for(i=97;i<=122;i++)
   if(dem[i]%2==1)
      d++;
if(d>0)
    cout<<d-1;
else
    cout<<0;
return 0;
}

 

Xâu đối xứngCho một xâu ký tự SS chỉ gồm các chữ cái thường a..z. Xâu đối xứng là xâu kí tự mà khi viết từ phải qua trái hay từ trái qua phải thì xâu đó không thay đổi. Ví dụ: madammadam, ioiioi là các xâu đối xứng.Yêu cầu: Với xâu ký tự SS cho trước, hãy tính số ký tự bỏ đi ít nhất để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.Ví dụ:Cho xâu aammmda thì cần bỏ 2 ký tự a và m thì xâu...
Đọc tiếp

Xâu đối xứng

Cho một xâu ký tự SS chỉ gồm các chữ cái thường a..z. Xâu đối xứng là xâu kí tự mà khi viết từ phải qua trái hay từ trái qua phải thì xâu đó không thay đổi. Ví dụ: madammadam, ioiioi là các xâu đối xứng.

Yêu cầu: Với xâu ký tự SS cho trước, hãy tính số ký tự bỏ đi ít nhất để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Ví dụ:

Cho xâu aammmda thì cần bỏ 2 ký tự a và m thì xâu còn lại là ammda và xếp lại thành madam là xâu đối xứng.

Cho xâu aaabbcc thì không cần bỏ ký tự thì xâu đó xếp lại thành bcaaacb là xâu đối xứng.

Dữ liệu vào

Đọc từ file văn bản XAUDX.INP chứa một xâu ký tự SS có nn ký tự (n≤105n≤105) chỉ gồm các ký tự chữ cái thường a..z.

Kết quả

Ghi ra file văn bản XAUDX.OUT một số nguyên là số lượng ký ít nhất cần bỏ để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Sample Input 1

 

aammmda

Sample Output 1

 

2

Sample Input 2

 

aaabbcc

Sample Output 2

0

Lưu ý :Dùng C++

 

1
14 tháng 2 2022

Đếm số lần xuất hiện của các kí tự 'a'..'z' trong xâu S. Dễ thấy với các kí tự có số lần xuất hiện là chẵn, ta có thể xếp một nửa kí tự đó sang 2 bên thỏa mãn tính chất đối xứng. Đối với kí tự có số lần xuất hiện là lẻ, ta làm tương tự và đưa kí tự còn lại vào trung tâm. Như vậy, để xâu sau khi xóa đối xứng thì chỉ có duy nhất một kí tự có số lần xuất hiện lẻ nên ta sẽ  xóa các kí tự lẻ đó, chỉ để lại 1 hoặc 0 cái cuối cùng. 
code tham khảo:
int main()
{
    string s;
    cin >> s;

    vector<int> fre(256, 0);
    for (char c : s) fre[c]++;

    int res = 0;
    for (int x : fre) res += (x % 2 == 1);
    cout << res - (res > 0);
    return 0;
}

Câu 1 - Các số đặc biệt                     Tên tệp chương trình : CAU1.PASĐịnh nghĩa: - Một số được gọi là đối xứng, nếu đọc từ bên trái sang bên phải hoặc từ bên phải sang trái đều được cùng một số. Ví dụ: số 75457 là số đối xứng.- Số chính phương là số bằng bình phương đúng của một số nguyên. Ví dụ số 256 là số chính phương (vì 256=162)Cho 2 số tự nhiên M và N (M, N trong khoảng từ 10 đến...
Đọc tiếp

Câu 1 - Các số đặc biệt                     Tên tệp chương trình : CAU1.PAS

Định nghĩa:

- Một số được gọi là đối xứng, nếu đọc từ bên trái sang bên phải hoặc từ bên phải sang trái đều được cùng một số. Ví dụ: số 75457 là số đối xứng.

- Số chính phương là số bằng bình phương đúng của một số nguyên. Ví dụ số 256 là số chính phương (vì 256=162)

Cho 2 số tự nhiên M và N (M, N trong khoảng từ 10 đến 100000 và M <N).

Yêu cầu:

a) Liệt kê và đếm xem có bao nhiêu số đối xứng nằm trong khoảng [M,N]

b) Liệt kê và đếm xem có bao nhiêu số chính phương nằm trong khoảng [M,N]

c) Liệt kê và đếm xem có bao nhiêu số đối xứng chính phương trong khoảng [M,N]

Dữ liệu vào là 2 số tự nhiên M và N nhập từ bàn phím. Kết quả in ra màn hình .

1
1 tháng 6 2021

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.

Một xâu được gọi là hoàn hảo nếu mọi xâu con đối xứng của nó đều có độ dài là số lẻ. Xâu con là tập hợp khác rỗng những ký tự liên tiếp của xâu mẹ. VD: a,bced,bbca,bced,bbc là những xâu con của abbcedabbced ; abe,aed,acabe,aed,ac không phải những xâu con của abbced.abbced. Xâu đối xứng là xâu khi vết ngược hay viết xuôi thì nó như nhau. VD: abba,abcba,aaaaabba,abcba,aaaa là xâu đối xứng ; ab,cca,dfggfrab,cca,dfggfr không...
Đọc tiếp

Một xâu được gọi là hoàn hảo nếu mọi xâu con đối xứng của nó đều có độ dài là số lẻ. Xâu con là tập hợp khác rỗng những ký tự liên tiếp của xâu mẹ. VD: a,bced,bbca,bced,bbc là những xâu con của abbcedabbced ; abe,aed,acabe,aed,ac không phải những xâu con của abbced.abbced. Xâu đối xứng là xâu khi vết ngược hay viết xuôi thì nó như nhau. VD: abba,abcba,aaaaabba,abcba,aaaa là xâu đối xứng ; ab,cca,dfggfrab,cca,dfggfr không phải xâu đối xứng. Cho xâu S. Kiểm tra xem S có hoàn hảo hay không? Dữ liệu vào Một dòng duy nhất chứa xâu S(|S|≤105)- độ dài của xâu S Dữ liêu đảm bảo xâu S chỉ chứa các chữ cái từ a tới z Kết quả In ra "YES" nếu S hoàn hảo, ngược lại in ra "NO" Sample Input 1 tranthanhnhan Sample Output 1 YES Sample Input 2 lamminhhien Sample Output 2 NO

*code pascal

 

0