UVA 246,uva246

來源:互聯網
上載者:User

UVA 246,uva246
UVA 246 - 10-20-30

題目連結

題意:給52張的撲克堆,先從左往右發7張牌,之後連續不斷從左往右發7張牌,如果有牌堆形成了以下3種情況(按順序判斷):
1、頭兩張+尾一張和為10或20或30
2、頭一張+尾兩張和為10或20或30
3、尾三張和為10或20或30
就把這三張牌拿走,放到總牌堆底(這步要不斷執行直到不再滿足條件或牌堆沒了)
如果有一個牌堆因為這個操作被取完了,那麼以後將不在這個位置發牌。
如果最後7個牌堆都可以消掉,那麼贏,總牌堆用完,那麼輸,否則平(即不斷迴圈)
問最後的輸贏平,並輸出步數

思路:類比,用一個vector記錄下7個牌堆和總牌堆,這樣就可以用set去選項組了,然後每個牌堆用一個雙端隊列deque表示,這樣滿足可以從頭也可以從尾巴取,不斷類比即可

代碼:

#include <cstdio>#include <cstring>#include <set>#include <queue>#include <vector>using namespace std;int num, zero[8];vector<deque<int> > piple;set<vector<deque<int> > > vis;void init() {    vis.clear();    piple.clear();    memset(zero, 0, sizeof(zero));    for (int i = 0; i < 8; i++)piple.push_back(deque<int>());    piple[7].push_back(num);    for (int i = 0; i < 51; i++) {scanf("%d", &num);piple[7].push_back(num);    }    for (int i = 0; i < 7; i++) {int now = piple[7].front();piple[7].pop_front();piple[i].push_back(now);    }}bool can(int x) {    return (x == 10 || x == 20 || x == 30);}bool tra1(int i) {    int top1 = piple[i].front();    piple[i].pop_front();    int sum = top1 + piple[i].front() + piple[i].back();    if (can(sum)) { piple[7].push_back(top1);piple[7].push_back(piple[i].front());piple[7].push_back(piple[i].back());piple[i].pop_front();piple[i].pop_back();return true;    }    piple[i].push_front(top1);    return false;}bool tra2(int i) {    int back1 = piple[i].back();    piple[i].pop_back();    int sum = back1 + piple[i].front() + piple[i].back();    if (can(sum)) { piple[7].push_back(piple[i].front());piple[7].push_back(piple[i].back());piple[7].push_back(back1);piple[i].pop_front();piple[i].pop_back();return true;    }    piple[i].push_back(back1);    return false;}bool tra3(int i) {    int back1 = piple[i].back();    piple[i].pop_back();    int back2 = piple[i].back();    piple[i].pop_back();    int sum = back1 + back2 + piple[i].back();    if (can(sum)) { piple[7].push_back(piple[i].back());piple[7].push_back(back2);piple[7].push_back(back1);piple[i].pop_back();return true;    }    piple[i].push_back(back2);    piple[i].push_back(back1);    return false;}bool tra(int i) {    if (piple[i].size() < 3) return false;    if (tra1(i)) return true;    if (tra2(i)) return true;    if (tra3(i)) return true;    return false;}void solve() {    int i = 0;    for (int t = 8; ; t++) {int now = piple[7].front();piple[7].pop_front();piple[i].push_back(now);while (tra(i));if (piple[i].size() == 0)    zero[i] = 1;i = (i + 1) % 7;if (vis.find(piple) != vis.end()) {    printf("Draw: %d\n", t);    return;}vis.insert(piple);if (piple[7].size() == 0) {    printf("Loss: %d\n", t);    return;}if (piple[7].size() == 52) {    printf("Win : %d\n", t);    return;}while (zero[i]) i = (i + 1) % 7;    }}int main() {    while (~scanf("%d", &num) && num) {init();solve();    }    return 0;}



美白的方法

美白方法1.要睡覺的時候,拿小黃瓜切雹放置臉上過幾分鐘拿下來,一個月您的臉就會白嫩。
  美白方法2.睡前用最便宜的化妝棉加上化妝水完全浸濕後,敷在臉上20分鐘,每周3次,您的皮膚會有想不到的水亮清透喔!!
  美白方法3.每天起床喝2杯水,其中一杯加些鹽巴,可以清腸胃。
  美白方法4.出門前一定要擦隔離霜及防晒乳,回到家記得要馬上卸妝。
  美白方法5.先用溫水再用冷水洗臉會讓肌膚既乾淨且毛細孔會變小喔。
美白方法6.一定要多喝水不熬夜,少吃油炸類的東西,保持皮膚清潔。
  美白方法7.每晚洗完臉後,將養樂多倒在化妝棉上,直接敷在兩頰,甚至連額頭、下巴 也可順便敷上,不但去斑兼美白,因每次用量大約只有六分之一瓶的養樂多。
  美白方法8.晚上少喝水,白天多喝水,睡前敷水亮面膜;多吃水果,不喝酒不抽煙不熬夜,保證水亮。
  美白方法9.首先用冷茶包敷眼五分鐘,接著做一個類似瑜珈的動作,這個動作是先盤腿,再將手舉高後往前趴下,保持這個姿勢約十分鐘。這個動作一開始不容易做 到十分鐘,要一段時間的練習,但是效果真的很好。
  美白方法10.市售的純水一瓶(600cc),只要一周用純水洗臉3-4次,並經常以化妝綿沾純水敷面,臉臉自然而然的漂漂喔!!
 美白方法11.據醫學報導,陽光中的紫外線,除了一般人所知的UVA及UVB外,還有 所謂的UVC,平常有陽光出現的日子,UVC及UVB易造成晒傷,但可別以為陰天就不需防晒了,因為陰天時仍有UVA長波射線會對肌膚造成傷害,因此 最好還是撐傘,才能防止老化的提早發生喔!
  美白方法12.使用意仁粉,加一小匙在大約1000cc的水中,當飲用水喝,不單只對皮膚好,連對減肥都有神奇的幼議寣I這是利用意仁具有利尿的效果,可以減少浮腫,所以具有瘦身及瘦臉的幼纂A而且對美白肌膚也有很大的協助。
  美白方法13.泡溫泉,泡溫泉不僅可讓肌膚粉潤光滑,且還可消除疲勞。若有皮膚過敏者,泡有療效的溫泉還可改善哦!!
  美白方法14.酵母粉1大匙(超市均有售)加統一優格1/2杯取適量塗抹於面膜紙上再 貼於臉上5-10分鐘即可,一周約2-3次美白效果會更好。與SK-II面 膜具有相同效果又省錢喔!
  美白方法15.小偏方:就是黑砂糖+蜂蜜+一點點水;雖然有點麻煩,但能讓肌膚水嫩水嫩
美白方法16.把優酪乳粉倒入鮮奶中(需密閉)放足24小時,冬天需要久一點,然後放 入冰箱冷藏就可以用了,製作多一點可以用來喝,原本是用來減肥的啦!不過用來敷臉更棒,美白的效果不錯。不過要忍受一下優酪乳酸酸的味道喔!!
  美白方法17.用麵粉蜂蜜及牛奶,以2:1:1的配方調勻,每周敷臉2次,每次15-20分鐘,用溫水洗淨,將化妝綿沾濕化妝水輕拍臉蛋,此項秘方需加配上一項 獨門絕招~~每天洗澡前先將臉蛋清潔乾淨,然後將蜂蜜塗抹臉上,讓洗澡時的 蒸汽,將珍貴的蜂蜜蒸入毛細孔。
  美白方法18.要擁有嬰兒般的肌膚很簡單:
  A.飲食:拒絕任何辛辣,油炸食物。多吃蔬菜水果,多喝水。
  B.睡眠:每天一定要11:00前上床睡覺。
  C.運動每天早晚各運動一小時
  美白方法19.只要覺得毛孔粗大時,可用以下幾種不同的面膜來敷臉:
  A.new skin的冰河泥加上敷面膏調勻後敷整晚睡覺效果超霹靂!
  B.蛋白直接抹勻在臉上待幹沖洗即可。
  C.用市售乾燥的敷面紙泡在牛奶裡瀝幹後敷在臉上有美白的幼纂C
  D.綠豆粉加蛋白調勻後均勻塗在臉上。
  美白方法20.在吃的方面,好吃又不會發胖的幾種選擇如......餘下全文>>
 
“葡萄烈酒”的英法德西班牙意大利阿拉伯日語的專業翻譯 各位傑出的度娘

英語:Grape spirits
法語:esprits de raisin
德語:Grape Geister
西班牙語:licores de uva
意大利語:acquaviti d'uva
阿拉伯:العنب الأرواح
日語:グレープスピリッツ
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.