青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ArcTan

dfs
隨筆 - 16, 文章 - 117, 評論 - 6, 引用 - 0
數據加載中……

LinerProgramming(單純型法---1)

LinerProgramming,線性規劃。是運籌學的一個重要分支。
1947年單捷格(G.B.Dantzing)提出了一般LP規劃問題的求解方法———單純型法(simplex algorithm)。
這里是用到沒有改進的單純型法,輸入數據的標準型^..^

該學學改進的單純型法了。

線性規劃問題還是有很多用的,是個好模型!!!
#include<stdio.h>
#include
<string.h>
#include
<math.h>
#define inf 10000000.0
int n,m;
int g[1005],q[1005],p[1005];
double b[1005],c[1005],x[1005],a[1005][1005];

//********數據輸入、初始化*************
int init()
{
    
int i,j;
//********數組初始化**********
    memset(a,0,sizeof(a));
    memset(b,
0,sizeof(b));
    memset(c,
0,sizeof(c));
    memset(x,
0,sizeof(x));
    memset(q,
0,sizeof(q));
    printf(
"請輸入單純型表的標準型:\n");
//********輸入數據************
    scanf("%d%d",&m,&n);
    
for (i=1; i<=n ; i++ )
        scanf(
"%lf",&c[i]);
    
for (i=1; i<=n ; i++ )
        scanf(
"%d",&p[i]);
    
for (i=1; i<=m ; i++ )
    {
        
for (j=1; j<=n ; j++ )
            scanf(
"%lf",&a[i][j]);
        scanf(
"%lf",&b[i]);
    }
//**********初始化單純型表****
    for (i=1; i<=m ; i++ )
        g[i]
=i,q[i]=1,a[i][n+1]=b[i],x[i]=b[i];
    
for (j=1; j<=n ; j++ )
        a[m
+1][j]=c[j];
    
for (j=n+1; j>m ; j-- )
    {
        
for (i=1; i<=m ; i++ )
            a[m
+1][j]-=c[i]*a[i][j];
    }
}
//**********結果輸出********************
int print(int result)
{
    
int i;
    
double sum;
    
if (result==-1)
    {
        printf(
"無可行解\n");
        
return ;
    }
    
if (result==-2)
    {
        printf(
"無界解\n");
        
return ;
    }
    
if (result==-3)
    {
        printf(
"無窮多最優解。其中一個是:\n");
        sum
=0.0;
        
for (i=1; i<=n ; i++ )
            sum
+=x[i]*c[i];
        
for (i=1; i<n ; i++ )
            printf(
"%.4lf ",x[i]);
        printf(
"%.4lf\n",x[n]);
        
return ;
    }
    printf(
"有最優解:\n");
    sum
=0.0;
    
for (i=1; i<=n ; i++ )
        sum
+=x[i]*c[i];
    printf(
"%.4lf\n",sum);
    
for (i=1; i<n ; i++ )
        printf(
"%.4lf ",x[i]);
    printf(
"%.4lf\n\n",x[n]);
    
return ;
}
//***********檢查單純型表***************
int check()
{
    
int i,j,flag,flg,mj;
    
double max;
    flag
=0;
    flg
=0;
    
for (j=1; j<=n ; j++ )
    {
        
if (a[m+1][j]>0.0)
        {
            flag
=1;
            max
=0.0;
            
for (i=1; i<=m ; i++ )
                
if (a[i][j]>max)
                    max
=a[i][j],mj=j;
            
if (max>0.0)
                flg
=1;
        }
    }
    
if (!flag)
    {
        
for (i=1; i<=m ; i++ ) //判斷是否無可行解
        {
            
if (p[g[i]]&&a[i][n+1]!=0.0)
                
return -1;
        }

        
for (j=1; j<=n ; j++ ) //判斷是否有無窮多最優解
            if (!q[j]&&a[m+1][j]==0.0)
                
return -3;
        
return 0;//唯一最優解
    }
    
if (!flg)
        
return -2;//無界解

    
return mj;//找到最大的那個a[m+1][j]作為換入變量
}
//*********找到最小的那個數*************總是能找到的????
int f_min(int r)
{
    
int i,mi;
    
double min;
    min
=inf;
    
for (i=1; i<=m ; i++ )
        
if (a[i][r]!=0.0&&a[i][n+1]/a[i][r]>0&&a[i][n+1]/a[i][r]<min)
            min
=a[i][n+1]/a[i][r],mi=i;
    printf(
"%.4lf ",min);
    
return mi;//確定為換出變量
}
//********guass消元法進行迭代***********
int guass(int k,int r)
{
    
int i,j;
    
for (j=n+1; j>=1 ; j-- ) //行變換
        if (j!=r)
            a[k][j]
/=a[k][r];
    a[k][r]
=1.0;
    
for (i=1; i<=m+1 ; i++ ) //每一行進行變換
        if (i!=k)
        {
            
for (j=1; j<=n+1 ; j++ )
                
if (j!=r)
                    a[i][j]
-=a[k][j]*a[i][r];
            a[i][r]
=0.0;
        }
    q[g[k]]
=0;
    g[k]
=r;
    q[r]
=1;
    memset(x,
0,sizeof(x));
    
for (i=1; i<=m ; i++ )
        x[g[i]]
=a[i][n+1];
}
int work()
{
    
int i,j,r,k;
    
while (1)
    {
        
for (i=1; i<=m+1 ; i++ )
        {
            
for (j=1; j<=n+1 ; j++ )
                printf(
"%.4lf ",a[i][j]);
            printf(
"%d\n",g[i]);
        }
        
for (j=1; j<=n ; j++ )
            printf(
"%.4lf ",x[j]);
        printf(
"%.4lf\n",x[j]);
        r
=check();
        
if (r<=0)
            
return r;
        k
=f_min(r);
        printf(
"%d %d\n\n",k,r);

        guass(k,r);
    }
}
int main()
{
    
int result;
    init();
    result
=work();
    print(result);
    
return 0;
}


有時間得去poj,zoj上找找線性規劃的題目來下寫寫。嘿嘿,

posted on 2012-04-05 14:35 wangs 閱讀(551) 評論(0)  編輯 收藏 引用 所屬分類: ACM-模擬

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩国产精品 | 久久久久久久久久久久久久一区| 亚洲免费激情| 亚洲天堂激情| 久久九九99视频| 欧美电影在线观看| 日韩亚洲国产精品| 亚洲欧美一区二区原创| 久久免费午夜影院| 欧美日本不卡| 国产午夜精品视频| 亚洲伦理自拍| 欧美怡红院视频| 亚洲第一福利在线观看| 日韩视频在线播放| 欧美在线高清| 欧美日韩国产三区| 国产亚洲欧美色| 999亚洲国产精| 久久精品在线观看| 亚洲欧洲精品一区二区三区波多野1战4| 日韩一级免费观看| 久久久久国色av免费看影院| 欧美久久电影| 1204国产成人精品视频| 亚洲一区在线免费| 欧美成人日韩| 久久精品国产免费观看| 欧美日韩国产黄| 中日韩在线视频| 亚洲一区在线直播| 欧美gay视频激情| 99国内精品| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美日韩在线播| 红桃视频成人| 欧美在线免费观看| 亚洲精品久久视频| 久久久久在线| 国产一区二区三区在线观看精品| 亚洲精选中文字幕| 毛片av中文字幕一区二区| 一区二区三区av| 久久影院亚洲| 精品69视频一区二区三区| 亚洲欧美在线视频观看| 亚洲卡通欧美制服中文| 浪潮色综合久久天堂| 黄色亚洲网站| 美女国内精品自产拍在线播放| 午夜一级久久| 国产精品一区二区三区观看| 亚洲男人第一av网站| av成人免费在线| 欧美日韩高清在线观看| 99re在线精品| 日韩午夜电影av| 欧美视频精品在线| 午夜久久电影网| 欧美亚洲三级| 国产日韩欧美在线视频观看| 久久国产精品色婷婷| 欧美一级视频| 在线观看日产精品| 欧美二区不卡| 欧美日本一区| 亚洲影院一区| 午夜精品久久久久| 尤物精品国产第一福利三区 | 在线一区二区三区四区| 欧美日韩在线一区| 亚洲欧美激情在线视频| 亚洲欧美日韩精品一区二区| 国产一区二区三区久久久久久久久| 久久成人免费网| 久久久久高清| 亚洲免费观看在线视频| 夜夜嗨av一区二区三区免费区| 欧美日韩综合在线免费观看| 亚洲欧美一区二区精品久久久| 欧美亚洲综合久久| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲国产成人tv| 国产精品久久久久久久久久妞妞| 久久国产精品久久久久久电车| 久久人人爽人人| 欧美视频一区二| 在线欧美一区| 亚洲最黄网站| 在线观看日韩www视频免费| 亚洲日韩欧美视频| 国产亚洲欧美在线| 亚洲成人资源网| 国产精品免费一区二区三区观看| 理论片一区二区在线| 欧美日韩在线一二三| 老司机成人在线视频| 欧美日韩一区二区欧美激情 | 在线成人小视频| 亚洲精品在线二区| 韩国成人精品a∨在线观看| 亚洲乱码国产乱码精品精可以看| 国产一区二区三区成人欧美日韩在线观看| 欧美激情一区二区三区不卡| 国产精品无码永久免费888| 亚洲国产精品高清久久久| 国产精品永久免费视频| 亚洲人成绝费网站色www| 黑人一区二区三区四区五区| 一区二区三区视频观看| 夜夜嗨一区二区| 欧美成人精精品一区二区频| 免费国产一区二区| 国内精品久久久久久久果冻传媒| 一本色道久久综合| 亚洲欧洲日本国产| 久久亚洲国产成人| 久久久久久久综合日本| 国产精品三区www17con| 一本高清dvd不卡在线观看| 夜夜嗨av一区二区三区免费区| 香蕉免费一区二区三区在线观看| 免费在线观看日韩欧美| 欧美波霸影院| 在线日韩av片| 久久天天狠狠| 欧美激情精品久久久久久免费印度 | 美女诱惑一区| 欧美91福利在线观看| 好看的日韩视频| 欧美亚洲自偷自偷| 久久精品二区| 狠狠色伊人亚洲综合网站色| 欧美影院成人| 欧美视频一区二区三区…| 亚洲第一二三四五区| 亚洲精品影院在线观看| 欧美精品在欧美一区二区少妇| 亚洲国产综合91精品麻豆| 亚洲日本欧美日韩高观看| 欧美成人一区二区三区| 亚洲免费精彩视频| 欧美一级在线播放| 国产日韩在线视频| 久久久蜜桃一区二区人| 欧美国产免费| 欧美小视频在线| 亚洲欧美日韩在线一区| 国产精品夜夜夜| 欧美在线视屏| 欧美freesex交免费视频| 亚洲日本中文| 欧美午夜精品久久久| 亚洲综合99| 男人的天堂亚洲| 亚洲视频第一页| 国产一区二区丝袜高跟鞋图片 | 男人的天堂亚洲在线| 亚洲欧洲另类国产综合| 国产精品theporn| 久久久精品一区| 夜夜狂射影院欧美极品| 久久综合婷婷| 亚洲色图在线视频| 国语精品一区| 欧美日韩卡一卡二| 久久精品国产第一区二区三区| 亚洲福利视频网站| 欧美在线视频在线播放完整版免费观看| 国产一区视频网站| 欧美精品大片| 久久精品二区亚洲w码| 99国产精品久久久久久久成人热| 久久精品一区二区三区不卡| 一区二区三欧美| 伊人婷婷欧美激情| 欧美性开放视频| 欧美成人黄色小视频| 性欧美xxxx视频在线观看| 亚洲欧洲偷拍精品| 美脚丝袜一区二区三区在线观看| 午夜精品久久| 亚洲一区免费观看| 99re亚洲国产精品| 亚洲激情另类| 在线观看视频亚洲| 黄色成人av在线| 国产欧美视频一区二区| 欧美视频国产精品| 欧美激情一区二区三区在线视频 | 91久久精品美女| 黄色成人91| 国产一区二区毛片| 国产精品永久免费观看| 欧美三级视频在线| 欧美美女bb生活片| 欧美精品免费观看二区| 老司机凹凸av亚洲导航| 亚洲欧美变态国产另类| 亚洲午夜精品一区二区三区他趣|