|
|
|
ช่วยแนะนำวิธีการจับคู่โดยหาผลรวมจากรายได้หน่อยครับ ขอบคุณครับ |
|
|
|
|
|
|
|
เงียบๆ
|
|
|
|
|
Date :
2015-08-06 15:24:12 |
By :
hnu25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โค้ดไม่มี มีแต่แนวคิด
เอาจำนวนทั้งหมด มาเรียงกัน
ตามลำดับ
จากนั้นก็จับคู่ที่ติดกัน
เอาจำนวน มากกว่าตั้ง เอาจำนวนที่น้อยกว่าลบ
แล้วก็จะได้ผลลัพธ์พร้อมคู่
// เผ่นแปป แค่มาช่วยดัน
|
|
|
|
|
Date :
2015-08-06 15:32:46 |
By :
CasanovaKung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<input value="ID G,H,I">
ถ้าผมต้องการเอาไอดีของกลุ่ม ข G,H,I ไปคำนวนหาค่าจากกลุ่ม ก พร้อมกันได้ไหม ต้องทำยังไง
เมื่อส่งค่ามาจาก <input value="ID G,H,I">
|
|
|
|
|
Date :
2015-08-06 17:13:15 |
By :
hnu25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่รู้จะใช้ได้หรือเปล่า เดาจากที่ จขกท บอก ไม่เข้าใจหลายที่
Code (PHP)
<?php
$a = array('A' => 10000,'B' => 15000,'C' => 20000,'D' => 25000,'E' => 30000,'F' => 35000,'M'=>3000);
$b = array( 'G' => 14000,'H' => 28000,'I' => 35000);
$c = array(); $d = array();
function pre_array($s){
$l = strlen(max($s)); $t = array();
foreach($s as $k=>$v){ $p='a'.str_pad($v, $l, '0',STR_PAD_LEFT); $t[$p] = array('id'=>$k, 'value'=>$v); }
return $t;
}
function sort_ab($s){
$t = array(); foreach($s as $k=>$v){ $t[]=$k;} sort($t); return $t;
}
function search_match($v, $ar, $vl, &$cur){
$min = 0; $i=count($ar);
while($i){
$i--; $k=$ar[$i];
$dif = ($vl[$k]['value'] - $v);
if( $dif==0 ){$cur=$k; break;}
if( ($dif>0) && (!$min || $dif<$min ) ){ $min = $dif; $cur = $k;}
} return ($cur!='');
}
function set_c($a, $b, &$c){
$x = sort_ab($a); $y = sort_ab($b); $i=count($x);
while($i){
$i--; $m=$x[$i]; $n=''; $v=$a[$m]['value'];
if(search_match($v, $y, $b, $n)){
if(!isset($c[$n])) $c[$n]=array();
$c[$n][]=array($a[$m]['id'], $v );
$b[$n]['value'] -= $a[$m]['value'];
}
}
}
$x=pre_array($a); $y=pre_array($b);
set_c( $x, $y, $c);
echo '<table border=1>';
foreach($c as $k=>$v){
$i=0;
foreach($v as $m=>$vl){
echo '<tr><td>'.(!$i? $y[$k]['id'] : '').'</td><td>'.(!$i? $y[$k]['value']:'').'</td>',
'<td>'.$vl[0].'</td><td>'.$vl[1].'</td></tr>';
$i++;
}
}
echo '</table>';
|
|
|
|
|
Date :
2015-08-07 20:50:34 |
By :
NewbiePHP |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|