Jadual Kandungan
Cara-cara untuk mencari penyelesaian
Pendekatan cekap
Contoh
Output
Kesimpulan
Rumah pembangunan bahagian belakang C++ Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++

Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++

Sep 15, 2023 am 09:17 AM
kembali matriks lanjutan Sebelumnya

Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++

Bincangkan masalah berdasarkan matriks lanjutan. Matriks lanjutan ialah matriks yang saiznya bertambah dengan beberapa faktor.

Di sini kita mempunyai matriks aksara yang saiznya dibesarkan dengan gandaan 2, iaitu jika saiz matriks asal ialah N * N, maka saiz matriks yang dikembangkan menjadi 2N * 2N. Kami diberi urutan aksara yang terletak di (i, j) dan kami perlu mengembalikan jujukan aksara yang terletak di (i, (j - N - 1)%N).

Mari kita fahami dengan menggambarkan beberapa matriks pengembangan awal.

Given Matrix -> [ a, b ] [ c, d ], 2 X 2 matrix
Multiplying with { a, b, c, d }
A X [ a, b ]
B X [ a, b ]
C X [ a, b ]
D X [ a, b ]
[ c, d ] [ c, d ] [ c, d ] [ c, d ]

Expanded Matrix -> [ aa, ab, ba, bb ]
[ ac, ad, bc, bd ]
[ ca, cb, da, db ]
[ cc, cd, dc, dd ], 4X4 matrix
To expand again, multiply it by { a, b, c, d } and a matrix of size 8X8 will be formed.

Expanded Matrix - > [ aaa, aab, aba, abb, baa, bab, bba, bbb ]
[ aac, aad, abc, abd, bac, bad, bbc, bbd ]
[ aca, acb, ada, adb, bca, bcb, bda, bdb ]
[ acc, acd, adc, add, bcc, bcd, bdc, bdd ]
[ caa, cab, cba, cbb, daa, dab, dba, dbb ]
[ cac, cad, cbc, cbd, dac, dad, dbc, dbd ]
[ cca, ccb, cda, cdb, dca, dcb, dda, ddb ]
[ ccc, ccd, cdc, cdd, dcc, dcd, ddc, ddd ]
Salin selepas log masuk

Ini adalah dua matriks pengembangan awal; dengan mengandaikan kita mendapat jujukan aksara "bcc", maka kita perlu mengembalikan jujukan yang baru ditinggalkan, iaitu "tambah". Juga, dengan mengandaikan matriks adalah kitaran, iaitu jika urutan yang diberikan adalah pada (i, 0), maka kembalikan urutan pada (i, N-1)

Input: abb
Output: aba
Explanation: The sequence just left to abb is aba in the 8X8 matrix.

Input: aadc
Output: aacd

Input: abbcd
Output: abbcc
Salin selepas log masuk

Cara-cara untuk mencari penyelesaian

Fikirkan masalahnya dahulu , satu-satunya penyelesaian yang terlintas di fikiran Penyelesaiannya adalah untuk mencari matriks lanjutan yang mengandungi urutan yang diberikan tetapi tidak kelihatan sangat kompleks. Kita perlu membentuk matriks terlebih dahulu dan kemudian mencari urutannya.

Pendekatan cekap

Selepas melihat beberapa matriks yang mula-mula berkembang, kami menemui corak yang melaluinya kami boleh melihat elemen sebelumnya. Iaitu,

  • merentasi urutan aksara bermula dari indeks terakhir.

  • Jika elemen indeks ialah 'b' atau 'd' maka tukarkannya kepada 'a' atau 'c' dan berhenti melintasi tatasusunan.

  • Jika elemen indeks ialah 'a' atau 'c', ' tukarkannya kepada 'b' atau 'd' dan beralih ke indeks seterusnya dan semaknya.

Contoh

C++ Kod kaedah di atas

#include <bits/stdc++.h>
using namespace std;
int main (){
   string seq = "abbcd";
   int n = seq.length ();
   // traverse through the string from last.
   for (int i = n; i >= 0; i--){
      // if the element is b or d, change them and stop traversing.
      if (seq[i] == &#39;b&#39;){
      seq[i] = &#39;a&#39;;
      break;
   }
   if (seq[i] == &#39;d&#39;){
      seq[i] = &#39;c&#39;;
      break;
   }
   // if an element is b or d, change them and move to the next element.
   if (seq[i] == &#39;a&#39;)
      seq[i] = &#39;b&#39;;
   else if (seq[i] == &#39;c&#39;)
      seq[i] = &#39;d&#39;;
   }
   cout << "The Previous sequence is: " << seq;
   return 0;
}
Salin selepas log masuk

Output

The previous sequence is: abbcc
Salin selepas log masuk

Kesimpulan

Dalam artikel ini, kita membincangkan tentang matriks aksara lanjutan dan bagaimana ia terbentuk. Kami juga membincangkan mencari elemen sebelumnya dalam matriks lanjutan. Kami menyelesaikan masalah ini dengan memahami corak yang dicipta oleh matriks aksara lanjutan.

Kami juga membincangkan kod C++ untuk menyelesaikan masalah ini, yang boleh kami tulis dalam mana-mana bahasa pengaturcaraan seperti C, Java, Python, dll. Kami harap anda mendapati tutorial ini membantu.

Atas ialah kandungan terperinci Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Petua PHP: Cepat Laksanakan Kembali ke Fungsi Halaman Sebelumnya Petua PHP: Cepat Laksanakan Kembali ke Fungsi Halaman Sebelumnya Mar 09, 2024 am 08:21 AM

Tip PHP: Cepat melaksanakan fungsi kembali ke halaman sebelumnya Dalam pembangunan web, kita sering menghadapi keperluan untuk melaksanakan fungsi kembali ke halaman sebelumnya. Operasi sedemikian boleh meningkatkan pengalaman pengguna dan memudahkan pengguna menavigasi antara halaman web. Dalam PHP, kita boleh mencapai fungsi ini melalui beberapa kod mudah. Artikel ini akan memperkenalkan cara cepat melaksanakan fungsi kembali ke halaman sebelumnya dan memberikan contoh kod PHP tertentu. Dalam PHP, kita boleh menggunakan $_SERVER['HTTP_REFERER'] untuk mendapatkan URL halaman sebelumnya

Apakah keputusan yang dikembalikan MySQL selepas memasukkan data? Apakah keputusan yang dikembalikan MySQL selepas memasukkan data? Mar 01, 2024 am 10:27 AM

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas untuk menyimpan dan mengurus data. Apabila kami ingin memasukkan data baru ke dalam jadual pangkalan data, kami biasanya menggunakan pernyataan INSERT. Dalam MySQL, apabila pernyataan INSERT dilaksanakan untuk berjaya memasukkan data, keputusan akan dikembalikan, yang merupakan hasil daripada operasi memasukkan. Dalam artikel ini, kami akan membincangkan secara terperinci hasil yang dikembalikan oleh MySQL selepas memasukkan data dan memberikan beberapa contoh kod tertentu. 1. Keputusan dikembalikan selepas memasukkan data dalam MySQL Apabila berjaya dilaksanakan

Cara menggunakan Vue untuk melaksanakan pengembalian ke kesan halaman sebelumnya Cara menggunakan Vue untuk melaksanakan pengembalian ke kesan halaman sebelumnya Sep 19, 2023 pm 01:07 PM

Cara menggunakan Vue untuk melaksanakan kesan khas untuk kembali ke halaman sebelumnya Dalam pembangunan bahagian hadapan, kita sering menghadapi situasi di mana kita perlu kembali ke halaman sebelumnya. Dengan menambahkan butang kembali, anda boleh memberikan pengalaman pengguna yang lebih baik. Artikel ini akan memperkenalkan cara menggunakan rangka kerja Vue untuk mencapai kesan khas untuk kembali ke halaman sebelumnya dan memberikan contoh kod yang sepadan. Pertama, dalam projek Vue, anda perlu membuat halaman seperti halaman sebelumnya. Kami boleh menetapkan penghalaan melalui VueRouter, dan setiap laluan sepadan dengan komponen. Dalam halaman sebelumnya, kita boleh menambah butang kembali dan lulus acara klik

Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++ Dalam matriks lanjutan, kembalikan elemen sebelumnya dalam C++ Sep 15, 2023 am 09:17 AM

Bincangkan masalah berdasarkan matriks lanjutan. Matriks lanjutan ialah matriks yang saiznya bertambah dengan beberapa faktor. Di sini kita mempunyai matriks aksara yang saiznya dibesarkan dengan gandaan 2, iaitu jika saiz matriks asal ialah N*N, maka saiz matriks yang dikembangkan menjadi 2N*2N. Kami diberi jujukan aksara yang terletak di (i, j), dan kami perlu mengembalikan jujukan aksara yang terletak di (i, (j-N-1)%N). Mari kita fahami dengan menggambarkan beberapa matriks pengembangan awal. GivenMatrix->[a,b][c,d],2X2matrixMendarabdengan{a,b,c,d}AX[a,b]BX[a,b]CX[a,b]DX[a,b][c ,d]

Program Java mengembalikan elemen terbesar dalam senarai Program Java mengembalikan elemen terbesar dalam senarai Aug 19, 2023 pm 05:17 PM

Kita boleh menggunakan gelung tatasusunan untuk mengembalikan elemen terbesar daripada senarai. Ini dicapai terutamanya dengan membandingkan model. Dalam senarai, bilangan terbesar dibandingkan dengan semua elemen dalam senarai. Prosedur akan menganggap 'n' sebagai kuantiti input dan menyimpannya sebagai nilai data dalam tatasusunan. Selepas itu, program akan memaparkan elemen terbesar pada konsol output selepas gelung berakhir. Dalam artikel ini, kami akan membantu anda memahami dan menulis beberapa kod Java yang melaluinya anda boleh mencari elemen terbesar daripada senarai tatasusunan. Bagaimana untuk memilih nombor terbesar dari tatasusunan menggunakan Java? Kami boleh mencari nombor terbanyak dengan menyusunanarray.Untuk mentakrifavoidArrayL

Tulis fungsi dalam pengaturcaraan C yang mengembalikan 2 apabila input adalah 1 dan 1 apabila input adalah 2 Tulis fungsi dalam pengaturcaraan C yang mengembalikan 2 apabila input adalah 1 dan 1 apabila input adalah 2 Sep 10, 2023 pm 01:25 PM

Anda perlu membuat fungsi yang mengembalikan 2 untuk input 1 dan 1 untuk input 2. Fungsi ini boleh dibuat dalam pelbagai cara bergantung kepada logik yang anda gunakan. Cara paling mudah ialah menggunakan pernyataan bersyarat, jika nombornya ialah 1, kembalikan 2, sebaliknya kembalikan 1, cara lain termasuk menggunakan operasi matematik (apa-apa jenis akan berfungsi) dan operasi XOR. Contoh #include<stdio.h>//Kaedah1usingtheifstatementintreverseif(intx){ if(x==1)return2;

Bagaimana untuk mengembalikan nilai fungsi tersuai PHP? Bagaimana untuk mengembalikan nilai fungsi tersuai PHP? Apr 15, 2024 pm 05:00 PM

Fungsi tersuai dalam PHP boleh mengembalikan nilai jenis yang ditentukan melalui penyata pulangan, termasuk rentetan, nombor, tatasusunan dan objek. Kes praktikal: - Kembalikan rentetan: functiongreet($name){return "Hello,$name!";} - Return array: functionget_user_data($id){return["name" =>"John","email"=> " john@example.com"];}

Bagaimana untuk mencipta fungsi dengan nilai pulangan menggunakan PHP? Bagaimana untuk mencipta fungsi dengan nilai pulangan menggunakan PHP? Apr 10, 2024 pm 12:45 PM

Langkah-langkah untuk menggunakan nilai pulangan fungsi dalam PHP termasuk: menggunakan fungsi untuk mengisytiharkan fungsi;

See all articles