Lấy các giá trị thỏa mãn điều kiện (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

mình có ý nghĩ thế này , các bạn xem excel có giải quyết được không nha..
ví dụ mình có 400 dòng dữ liệu...và N giá trị cần lấy...( điều kiện trong mỗi dòng dữ liệu đó, phải có ít nhất 1 giá trị thuộc tập N giá trị mà mình muốn lấy..
-------
Bước 1 : xác định các giá trị cần lấy :
+ Giá trị thứ nhất sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều nhất
- - không được xuất hiện trong các dòng có giá trị thứ 2 - thứ 3....đến thứ N ...mà mình muốn lấy...
+ giá trị thứ 2 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 2
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 3...đến thứ N ...mình muốn lấy...
+ Giá trị thứ 3 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 3
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 2...thứ 4 cho đến thứ N ...mình muốn lấy...
+ giá trị thứ N mình cần lấy cũng sẽ với các điều kiện như trên..

Như vậy ta đã có N giá trị cần lấy...
Bước 2: Tập hợp N các giá trị cần lấy .. với điều kiện sau
---- Tổng số lần xuất hiện của N giá trị = 400
---- Số các giá trị có trong - ( phép tổng có lần xuất hiện =400 ) là ít nhất.........
---- mình không biết nhiều về excel...cũng chưa chắc cách đó là tối ưu nhất ( nếu excel làm được).....đó chỉ là cách nghĩ của mình.....
-- hi vọng được các bạn trên này ..có thể cho mình ..hiểu về cách nghĩ của mình .như thế có ổn không..với bài toán này...xin cảm ơn tât cả mọi người nhiều lắm..
 
mình có ý nghĩ thế này , các bạn xem excel có giải quyết được không nha..
ví dụ mình có 400 dòng dữ liệu...và N giá trị cần lấy...( điều kiện trong mỗi dòng dữ liệu đó, phải có ít nhất 1 giá trị thuộc tập N giá trị mà mình muốn lấy..
-------
Bước 1 : xác định các giá trị cần lấy :
+ Giá trị thứ nhất sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều nhất
- - không được xuất hiện trong các dòng có giá trị thứ 2 - thứ 3....đến thứ N ...mà mình muốn lấy...
+ giá trị thứ 2 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 2
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 3...đến thứ N ...mình muốn lấy...
+ Giá trị thứ 3 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 3
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 2...thứ 4 cho đến thứ N ...mình muốn lấy...
+ giá trị thứ N mình cần lấy cũng sẽ với các điều kiện như trên..

Như vậy ta đã có N giá trị cần lấy...
Bước 2: Tập hợp N các giá trị cần lấy .. với điều kiện sau
---- Tổng số lần xuất hiện của N giá trị = 400
---- Số các giá trị có trong - ( phép tổng có lần xuất hiện =400 ) là ít nhất.........
---- mình không biết nhiều về excel...cũng chưa chắc cách đó là tối ưu nhất ( nếu excel làm được).....đó chỉ là cách nghĩ của mình.....
-- hi vọng được các bạn trên này ..có thể cho mình ..hiểu về cách nghĩ của mình .như thế có ổn không..với bài toán này...xin cảm ơn tât cả mọi người nhiều lắm..

ngay cái bước đâu tiên của bạn là không làm được rồi.
bạn không biết dòng thứ 2 đến dòng N là những dòng nào thì làm sao bạn lấy nó làm điều kiện để chọn được dòng thứ nhất?
 
ngay cái bước đâu tiên của bạn là không làm được rồi.
bạn không biết dòng thứ 2 đến dòng N là những dòng nào thì làm sao bạn lấy nó làm điều kiện để chọn được dòng thứ nhất?
à quên ...trong bảng dữ liệu của mình chỉ có 107 giá trị khác nhau..không biết như thế có được không bạn..
và dòng thì mảng dữ liệu đã cho 400 dòng..mình nghĩ nhiều nhất chắc cũng như vậy ...
 
ngay cái bước đâu tiên của bạn là không làm được rồi.
bạn không biết dòng thứ 2 đến dòng N là những dòng nào thì làm sao bạn lấy nó làm điều kiện để chọn được dòng thứ nhất?
không được xuất hiện trong các dòng có giá trị thứ 2 - thứ 3....đến thứ N ...mà mình muốn lấy...
có phải cái này không bạn..đây là điều kiện...không được xuất hiện trong các dòng có giá trị..thứ N mà bạn..chứ không phải dòng N...
 
ngay cái bước đâu tiên của bạn là không làm được rồi.
bạn không biết dòng thứ 2 đến dòng N là những dòng nào thì làm sao bạn lấy nó làm điều kiện để chọn được dòng thứ nhất?
xin lỗi bạn..mình không biết về excel nhiều nên khi viết làm cho đôi chỗ khó hiểu...vậy nói đơn giản thế này nha..
+ mình cần lấy tập hợp các giá trị...với điều kiện..
---- số lần xuất hiện của các giá trị mình cần lấy...không được xuất hiện quá 1 giá trị trên một dòng dữ liệu ..( trong các số giá trị mình cần lấy )
----- làm sao cho số các giá trị mình cần lấy là ít nhất...

vd: mình có 3 dòng dữ liệu
abc
abd
dce
thì mình cần lấy....a va e..hoặc b và e..không lấy..a và d..b và d.......
 
à quên ...trong bảng dữ liệu của mình chỉ có 107 giá trị khác nhau..không biết như thế có được không bạn..
và dòng thì mảng dữ liệu đã cho 400 dòng..mình nghĩ nhiều nhất chắc cũng như vậy ...

Có lẽ bạn đếm nhầm, là 108 giá trị có lẽ mới là chính xác
 
xin lỗi bạn..mình không biết về excel nhiều nên khi viết làm cho đôi chỗ khó hiểu...vậy nói đơn giản thế này nha..
+ mình cần lấy tập hợp các giá trị...với điều kiện..
---- số lần xuất hiện của các giá trị mình cần lấy...không được xuất hiện quá 1 giá trị trên một dòng dữ liệu ..( trong các số giá trị mình cần lấy )
----- làm sao cho số các giá trị mình cần lấy là ít nhất...

vd: mình có 3 dòng dữ liệu
abc
abd
dce
thì mình cần lấy....a va e..hoặc b và e..không lấy..a và d..b và d.......
Nếu dòng 1 là "abc", dòng 2 là a, dòng 3 là b dòng 4 là c thì bạn cần lấy abc, dòng 1 sẽ xuất hiện cả 3 giá trị.
Nếu làm theo phương pháp: lấy số thứ nhất là số xuất hiện nhiều nhất, loại các dòng chứa số thứ 1, số thứ 2 là số xuất hiện nhiều nhất trong những dòng còn lại... cũng chưa ra đáp án tối ưu. Ví dụ:
1: a, b, m
2: a, b, n
3: a, c, p
4: a, c, q
5: b, r
6: c, s
Đáp án tối ưu là "b, c" nhưng nếu lấy số xuất hiện nhiều nhất là a, loại 4 dòng đầu chứa a thì kết quả tìm được là abc, abs, arc, ars chứa 3 phần tử.
 
Nếu dòng 1 là "abc", dòng 2 là a, dòng 3 là b dòng 4 là c thì bạn cần lấy abc, dòng 1 sẽ xuất hiện cả 3 giá trị.
Nếu làm theo phương pháp: lấy số thứ nhất là số xuất hiện nhiều nhất, loại các dòng chứa số thứ 1, số thứ 2 là số xuất hiện nhiều nhất trong những dòng còn lại... cũng chưa ra đáp án tối ưu. Ví dụ:
1: a, b, m
2: a, b, n
3: a, c, p
4: a, c, q
5: b, r
6: c, s
Đáp án tối ưu là "b, c" nhưng nếu lấy số xuất hiện nhiều nhất là a, loại 4 dòng đầu chứa a thì kết quả tìm được là abc, abs, arc, ars chứa 3 phần tử.
xin cảm ơn bạn nhiều..như câu hỏi trên của mình thì đáp án đúng sẽ là ars..nhưng có lẽ với dữ liệu nhiều..thì chắc không ổn..số giá trị mình cần sẽ rất nhiều...như thế với đáp án abc là tối ưu nhất rồi..
xóa 4 dòng đầu ta còn lại..b,r,c,s...sẽ ưu tiên cho b và c..vì có lần xuất hiện trong ( tổng dữ liệu ) nhiều hơn r, và s...nên với file dữ liệu 400 dòng của mình thì...kết quả abc là hợp lý nhất....mong các ACE trên diễn đàn cho mình xin công thức để áp dụng vào file dữ liệu của mình gủi ở trên..xin chân thành cảm ơn mọi người ...
 
Lần chỉnh sửa cuối:
Hai điều kiện này có vẻ mâu thuẫn:
...( điều kiện trong mỗi dòng dữ liệu đó, phải có ít nhất 1 giá trị thuộc tập N giá trị mà mình muốn lấy..
-------
..
- Mỗi dòng có ít nhất 1 giá trị, vậy không phải ít nhất thì là bao nhiêu ( có lẽ là >1)


Bước 1 : xác định các giá trị cần lấy :
+ Giá trị thứ nhất sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều nhất
- - không được xuất hiện trong các dòng có giá trị thứ 2 - thứ 3....đến thứ N ...mà mình muốn lấy...
+ giá trị thứ 2 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 2
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 3...đến thứ N ...mình muốn lấy...
+ Giá trị thứ 3 ..sẽ được lấy với điều kiện sau
- - có số lần xuất hiện nhiều thứ 3
- - không được xuất hiện trong các dòng có giá trị thứ nhất - thứ 2...thứ 4 cho đến thứ N ...mình muốn lấy...
+ giá trị thứ N mình cần lấy cũng sẽ với các điều kiện như trên..
- Giá trị thứ 3 không xuất hiện tại các dòng có giá trị 1 và 2 .v.v .Vậy là mỗi dòng chỉ có 1 giá trị?
 
Hai điều kiện này có vẻ mâu thuẫn:

- Mỗi dòng có ít nhất 1 giá trị, vậy không phải ít nhất thì là bao nhiêu ( có lẽ là >1)



- Giá trị thứ 3 không xuất hiện tại các dòng có giá trị 1 và 2 .v.v .Vậy là mỗi dòng chỉ có 1 giá trị?
tại mình không biết nhiều về excel nên mới có cách nghĩ sai lầm như vậy..đã làm mọi người vất vả rồi..thành thật xin lỗi mọi người nhiều...
 
xin cảm ơn bạn nhiều..như câu hỏi trên của mình thì đáp án đúng sẽ là ars..nhưng có lẽ với dữ liệu nhiều..thì chắc không ổn..số giá trị mình cần sẽ rất nhiều...như thế với đáp án abc là tối ưu nhất rồi..
xóa 4 dòng đầu ta còn lại..b,r,c,s...sẽ ưu tiên cho b và c..vì có lần xuất hiện trong ( tổng dữ liệu ) nhiều hơn r, và s...nên với file dữ liệu 400 dòng của mình thì...kết quả abc là hợp lý nhất....mong các ACE trên diễn đàn cho mình xin công thức để áp dụng vào file dữ liệu của mình gủi ở trên..xin chân thành cảm ơn mọi người ...
Mong ACE cho mình công thức theo cách này..xin cảm ơn mọi người nhiều..
 
Web KT

Bài viết mới nhất

Back
Top Bottom