نمایش نتایج 1 تا 6 از 6

نام تاپیک: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

  1. #1
    کاربر دائمی آواتار thacker
    تاریخ عضویت
    دی 1390
    محل زندگی
    اکباتان
    پست
    621

    سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    سلام.

    ما یک آرایه ورودی داریم با تعداد دلخواه متغییر ...
    مثل :
    $input = array('A', 'B', 'C', 'D', 'E' ,'F');


    حالا میخواهیم این متغییر ها رو در دسته های 4 تایی بدون تکرار قرار بدیم ...
    خروجی مورد نظر :

    A B C D
    A B C E
    A B C F
    B C D E
    B C D F
    C D E F
    A C D E
    A C D F
    A C E F
    . . . . . . .
    . . . . . . .
    X X X X


    کسی میدونه چیکار باید کرد ؟
    ‌ ‌

  2. #2
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    اینی که میگم تئوریه همش وممکنه اشتباه باشه محسابات فقط میخام مسیر رو نشونت بدم
    اول در میاری که کلا چند حالت وجود داره که ترکیب 4 تایی بسازی با 6 حرف فکر میکنم 6*5*4*3= 360
    بعد یه حلقه میسازی که چک کنه تا وقتی تعداد ترکیب ها به 360 تا نرسیده ترکیب های رندوم ایجاد کنه
    شاید خیلی بهینه نباشه ولی احتمالا جواب میده !


    $stack = ['A', 'B', 'C', 'D', 'E' ,'F'];
    $output = [] ;

    while(count($output) < 360 )
    {
    $random = $stack ;
    shuffle($random);
    unset($random[5]);
    unset($random[4]);

    $key = implode('' , $random);
    if(isset($output[$key])) continue ;
    $output[$key] = $random ;
    }

    var_dump($output);


  3. #3
    کاربر دائمی آواتار thacker
    تاریخ عضویت
    دی 1390
    محل زندگی
    اکباتان
    پست
    621

    نقل قول: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    در واقع کاری که میخوام بکنم اینه که مثلا ما 16 تا تیم توی لیگ داریم . حالا میخوایم این 16 تا تیم رو توی گروه های 4 تایی دسته بندی کنیم .
    خروجی ای که لازم دارم اینه که تمام حالت های 4 تایی که میشه داشت رو بکشم بیرون . و بدون تکرار باشه.

    مثلا اگه توی یک گروه تیم های استقلال، پرسپولیس، سپاهان، فولاد افتادند دیگه گروهی که این 4 تا تیم با هم باشند رو خروجی نده مثلا سپاهان، پرسپولیس، استقلال، فولاد رو دیگه چاپ نکنه

  4. #4
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    اگه منظورت اینه که میخای 16 تیم رو بریزی تو گروه های 4 تایی به شکلی که تیم های تکراری تو گروه ها نباشه که نسبتا سادست
    کافیه همه تیم ها رو بریزی توی یک آرایه بعد یکی یکی از توی آرایه مادر خارج کنی تیم ها رو بریزی تو دسته های 4 تایی


    $teams = ['a','b','c','d','e','f','g' ,'h'];
    $groups = [] ;
    while(!empty($teams))
    {
    $this_group = [] ;
    for($i = 0 ; $i<=3 ; $i ++ )
    {
    shuffle($teams);
    $this_group []= array_shift($teams);
    }

    $groups[] = $this_group ;
    }

    echo '<pre>';
    print_r($groups);
    echo '</pre>';

  5. #5
    کاربر دائمی آواتار thacker
    تاریخ عضویت
    دی 1390
    محل زندگی
    اکباتان
    پست
    621

    نقل قول: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    ممنون . آره توی این حالت ساده هست . من میخوام تمام گروه هایی که ممکنه بوجود بیاد رو خروجی بگیرم (بدون تکرار ) نه اینکه 2 تا گروه رندوم خروجی بگیرم.

  6. #6
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: سوال در مورد تبدیل متغییر های یک آرایه به رشته های بدون تکرار

    همون اولی که گفتم جواب میده فقط کافیه قبلش محاسبه کنی همه حالت های ممکن رو دربیاری که چند تان

تاپیک های مشابه

  1. سوال: سوال در مورد انتقال اطلاعات از یک فرم به فرم دیگر
    نوشته شده توسط DumanNazeri در بخش C#‎‎
    پاسخ: 3
    آخرین پست: جمعه 09 خرداد 1393, 21:29 عصر
  2. آموزش: سوال در مورد ارسال اطلاعات از یک صفحه به صفحه دیگر
    نوشته شده توسط barbii در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: شنبه 26 فروردین 1391, 22:20 عصر
  3. پاسخ: 0
    آخرین پست: سه شنبه 13 اردیبهشت 1390, 12:18 عصر
  4. سوال در مورد انتقال اطلاعات از یک فرم به فرم دیگر
    نوشته شده توسط نیما حتمی در بخش C#‎‎
    پاسخ: 2
    آخرین پست: سه شنبه 10 اسفند 1389, 16:01 عصر
  5. سوال: سوال در مورد تبديل Borland C++‎‎ Builder به Visual Basic 6
    نوشته شده توسط Reza_Zeby در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 2
    آخرین پست: یک شنبه 02 اسفند 1388, 18:22 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •