View Full Version : undefined3 bài toán về ma trận
hauc2
02-03-2008, 03:10 AM
câu 1)
vd:xét ma trận vuông cấp 3
1 3 3
5 3 7
0 2 3
sau khi duyệt các phần tử song song với đường chéo phụ (kể cả đường chéo phụ)sẽ được
1
3 5
3 3 0
7 2
3
câu 2)
Tinh chỉnh đoạn code sao cho tối ưu nhất
char s1[80],s2[80];
int i;
....
for (i=0;i<strlen(s1);i++)
{
if (i<strlen(s1)/3 && s1[i]<'M') s2[i]=s1[i]+2;
else if(i<strlen(s1)/2 && s1[i]<'X') s2[i]=s1[i]+3;
else s2[i]=s1[i];
}
câu 3)
Dịch trái 1 cột của ma trận theo cơ chế vòng tròn
vd:xét ma trận 3x5
1 3 3 4 5
5 3 7 8 9
0 2 3 7 2
hauc2
02-03-2008, 03:12 AM
Mod sửa giúp cái tiêu đề! không hiểu sao lại vậy
??????????????
hoangbachvanlong
02-03-2008, 01:26 PM
Xin hỏi câu 1 và câu 3 là như thế nào vậy, em đọc không hiểu. Có phải bài 1 là nhập ma trận , rồi in ra các đường // với đường chéo phụ phải không? Còn câu 3 không hỉu gì.
hauc2
03-03-2008, 12:03 AM
Xin hỏi câu 1 và câu 3 là như thế nào vậy, em đọc không hiểu. Có phải bài 1 là nhập ma trận , rồi in ra các đường // với đường chéo phụ phải không? Còn câu 3 không hỉu gì.
Câu 1: Hãy liệt kê ra tất cả các đường chéo lớn nhỏ, mỗi đường chéo viết trên một dòng. Vậy dòng 1 chỉ có 1 số, dòng 2 có 2 số, dòng 3 có 3 số (đường chéo chính), dòng 4 có 2 số, dòng 5 có 1 số.
Câu 3: em phải chuyển cột 5 sang cột 4, 4 sang 3, 3 sang 2, 2 sang 1, một sang 5.
Kết quả mô tả như sau:
input:
1 3 3 4 5
5 3 7 8 9
0 2 3 7 2
output:
3 3 4 5 1
3 7 8 9 5
2 3 7 2 0
hoangbachvanlong
03-03-2008, 07:49 PM
Hi`, mấy bài này bình thường thôi mà, đợi em khi nào rỗi em làm hết, cứ việc post đi, không lo không có người giải. He he
muatuyet81
06-04-2009, 03:02 AM
Hi`, mấy bài này bình thường thôi mà, đợi em khi nào rỗi em làm hết, cứ việc post đi, không lo không có người giải. He he
đề bài quá hay ... hy vọng sớm có người giải quyết ........
=D>=D>=D>=D>=D>=D>
chúc 1 buổi tối vui vẻ !
Neo0ọNcky
25-05-2009, 02:36 AM
Hizz @huca2. Chào tất cả mọi người, mình xin đóng góp ý kiến qua cái thuật toán cái nhé còn Code thì chắc bạn tự viết nhé: ( có gì đâu, chắc bạn đọc qua cái là hiểu thôi ấy mà :D )
(*) Bài 1 đó, có gì, giả sử bạn nhập được ma trận vào rồi => kết quả phải có dạng này: (giả sử với n = 3 cho dễ hiểu nhé ):
a11
a12 a21
a13 a22 a23
a23 a32
a33
=> Đặc điểm:
- Tổng các giá trị của chỉ số (hàng,cột -> i,j) trong một dòng luôn là một hằng số. Giá trị đó ở các dòng là biến đổi tăng dần từ 1 -> 2n !!!
- Các chỉ số i,j đó luôn đổi vị trí cho nhau.
=> Bạn cứ tìm hết các giá trị của chỉ số trong ma trận mà có tổng không đổi vào cùng một dòng. Lấy giá trị tương ứng trong ma đó => bài toán xong !!! Okie !!! :D
(*) Bài 3. Vì cột sẽ sắp xếp lại theo kiểu hướng vòng tròn => dùng thêm một ma trận cột phụ ở bên ngoài để ghi dữ liêu ma trận cột đầu tiên sẽ chuyển đi. Sau đó các ma trận cột sau sẽ lần lượt ghi đè lên dữ liệu của ma trận cột tiếp theo đằng trước nó. Cái ma trận cột cuối cùng sẽ lẫy dữ liệu của ma trận cột phụ này ! => Okie !!!
=> các bạn tự viết code nhé. Dễ ấy mà, viết thì sẽ học được hơn rất nhìu đấy !!! :D
vBulletin v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.