日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

usaco1.4.4(milk3)

發(fā)布時間:2024/8/23 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 usaco1.4.4(milk3) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目:

Mother's Milk

Farmer John has three milking buckets of capacity A, B, and C liters. Each of the numbers A, B, and C is an integer from 1 through 20, inclusive. Initially, buckets A and B are empty while bucket C is full of milk. Sometimes, FJ pours milk from one bucket to another until the second bucket is filled or the first bucket is empty. Once begun, a pour must be completed, of course. Being thrifty, no milk may be tossed out.

Write a program to help FJ determine what amounts of milk he can leave in bucket C when he begins with three buckets as above, pours milk among the buckets for a while, and then notes that bucket A is empty.

PROGRAM NAME: milk3

INPUT FORMAT

A single line with the three integers A, B, and C.

SAMPLE INPUT (file milk3.in)

8 9 10

OUTPUT FORMAT

A single line with a sorted list of all the possible amounts of milk that can be in bucket C when bucket A is empty.

SAMPLE OUTPUT (file milk3.out)

1 2 8 9 10

SAMPLE INPUT (file milk3.in)

2 5 10

SAMPLE OUTPUT (file milk3.out)

5 6 7 8 9 10 都說了是搜索,紅果果的DFS
代碼: /* ID:614433244 PROG: milk3 LANG: C++ */#include"iostream" #include"cstdio" #include"memory.h" #include"algorithm" using namespace std; bool map[21][21][21]={0}; int ans[25],head=-1; bool flag[25]={0}; int a,b,c; void dfs( int x,int y,int z ) {if( map[x][y][z] )return;else{map[x][y][z]=1;if( x==0&&flag[z]==0 ){head++;ans[head]=z;flag[z]=1;}//A->Bif( x+y<=b )dfs( 0,x+y,z );elsedfs( x-( b-y ),b,z );//A->Cif( x+z<=c )dfs( 0,y,x+z );elsedfs( x+z-c,y,c );//B->Aif( x+y<=a )dfs( x+y,0,z );elsedfs( a,x+y-a,z );//B->Cif( y+z<=c )dfs( x,0,y+z );elsedfs( x,y+z-c,c );//C->Aif( x+z<=a )dfs( x+z,y,0 );elsedfs( a,y,x+z-a );//C->Bif( y+z<=b )dfs( x,y+z,0 );elsedfs( x,b,y+z-b );} }int main() {freopen("milk3.in","r",stdin);freopen("milk3.out","w",stdout);scanf("%d%d%d",&a,&b,&c);dfs( 0,0,c );sort( ans,ans+head+1 );int i;for( i=0;i<head;i++ )printf("%d ",ans[i]);printf("%d\n",ans[i]);return 0; }

不過因為節(jié)點走過了就無需再走,所以無需記住回溯




轉(zhuǎn)載于:https://www.cnblogs.com/rolyxiao/archive/2012/07/14/2591532.html

總結(jié)

以上是生活随笔為你收集整理的usaco1.4.4(milk3)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。