1. 程式人生 > >CSU 2019: Fleecing the Raffle 2020: Card Hand Sorting 2022: Artwork 2023: Bless You Autocorrect!

CSU 2019: Fleecing the Raffle 2020: Card Hand Sorting 2022: Artwork 2023: Bless You Autocorrect!

#include<iostream>
using namespace std;
int main(void)
{
    long long n,p ;
    while(cin>>n>>p)
    {
        double x = n/(p-1);
        double ans = 1;
        ans *= (double)p*x/(n+1);
        for(int i = 2;i <= p+1;++i)
            ans *= (double)(n-p+i)/(n + x -p+i-1);
        printf
("%0.8f\n",ans); } return 0; }
#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <vector>
using namespace std;

struct node_t{
    int val;
    int suit;
    int idx;
}p[60];

int increas[6],ssort[6];
bool cmp(node_t &a,node_t &b){
    if(a.suit==b.suit)
       return
(increas[a.suit]&&a.val<b.val)||(!increas[a.suit]&&a.val>b.val); return ssort[a.suit]<ssort[b.suit]; } int Idx[60],flag[6]={0}; int DP[60]; char s[3]; int ans,n; int S_Int_val(char a){ if('2'<=a&&a<='9') return a-'1'; if(a=='T') return 9; if
(a=='J') return 10; if(a=='Q') return 11; if(a=='K') return 12; return 13; } int S_Int_suit(char a){ if(a=='s') return 1; if(a=='h') return 2; if(a=='d') return 3; return 4; } void dfs(int rt){ if(rt==0){ sort(p,p+n,cmp); for(int i=0;i<n;++i) Idx[p[i].idx]=i; DP[0]=1; int maxn=1; for(int i=1;i<n;++i){ DP[i]=1; for(int j=0;j<i;++j) if(Idx[j]<Idx[i]) DP[i]=max(DP[j]+1,DP[i]); maxn=max(maxn,DP[i]); } ans=min(n-maxn,ans); } for(int i=1;i<=4;++i){ if(flag[i])continue; flag[i]=1; ssort[rt]=i; dfs(rt-1); flag[i]=0; } } int main(){ while(~scanf("%d",&n)){ for(int i=0;i<n;++i){ scanf("%s",s); p[i].val=S_Int_val(s[0]); p[i].suit=S_Int_suit(s[1]); p[i].idx=i; } ans=1e9; for(int i=0;i<(1<<4);++i){ for(int j=0;j<4;++j) increas[j+1]=((1<<j)&i)?1:0; dfs(4); } printf("%d\n",ans); } return 0; }
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<vector>
#include<cmath>
#include<queue>
#define N 1000010
#define file(x) freopen(#x".in","r",stdin),freopen(#x".out","w",stdout);
using namespace std;

char s[N];
int n,m;

struct Trie
{
    struct node{int ch[28],cnt;}T[N];
    int tot,root,d[N]; bool v[N];
    void init(){tot=root=1;}

    int newnode()
    {
        ++tot;
        for(int i=0;i<28;i++)
            T[tot].ch[i]=0;
        T[tot].cnt=0;
        return tot;
    }

    void ins(char* x)
    {
        int o=root;
        vector<int> point;
        for(int k=0;x[k];k++)
        {
            int c=x[k]-'a';
            if (!T[o].ch[c]) T[o].ch[c]=newnode();
            if (!T[o].ch[26]&&!T[o].cnt) point.push_back(o);
            T[T[o].ch[c]].ch[27]=o; o=T[o].ch[c];
        }
        T[o].cnt++;
        for(int i=0;i<point.size();i++)
            if (point[i]!=root) T[point[i]].ch[26]=o;
    }

    void bfs()
    {
        queue<int> q;
        memset(v,0,sizeof(v));
        q.push(root); d[root]=0; v[root]=1;
        while(!q.empty())
        {
            int x=q.front();q.pop();
            for(int i=0;i<28;i++)
            {
                int y=T[x].ch[i];
                if (y==0||v[y]) continue;
                v[y]=1; d[y]=d[x]+1; q.push(y);
            }
        }
    }

    int query(char* x)
    {
        int o=root,k;
        for(k=0;x[k];k++)
        {
            int c=x[k]-'a';
            if (T[o].ch[c]==0) break;
            o=T[o].ch[c];
        }
        return d[o]+strlen(x)-k;
    }
} Trie;




int main()
{
    //file(x);
    while(cin>>n>>m)
    {
        Trie.init();
        while(n--)
        {
            scanf("%s",s);
            Trie.ins(s);
        }
        Trie.bfs();
        while(m--)
        {
            scanf("%s",s);
            printf("%d\n",Trie.query(s));
        }
        puts("");
    }
    return 0;
}

相關推薦

CSU 2019: Fleecing the Raffle 2020: Card Hand Sorting 2022: Artwork 2023: Bless You Autocorrect!

#include<iostream> using namespace std; int main(void) { long long n,p ; while(cin>&

CSU-2019 Fleecing the Raffle

line draw ror 最大 http 個人 aced Once sts CSU-2019 Fleecing the Raffle Description A tremendously exciting raffle is being held, with some t

Fleecing the Raffle(NCPC 2016 暴力求解)

inpu where spl wan clas box namespace 輸出 ssi 題目: A tremendously exciting raffle is being held, with some tremendously exciting prizes bei

Card Hand Sorting 18中南多校第一場C題

tin 在一起 最大 次數 push_back bool tor using post 一、題意 隨機給你一堆牌(標準撲克牌),之後讓你按照:  第一優先規則:所有相同花色的在一起   第二優先規則:所有相同花色的必須按照升序或者降序排列 問,你最少要拿出多少張牌插入到其他

NCPC2016--C Card Hand Sorting(upc 3028)

題目描述 When dealt cards in the card game Plump it is a good idea to start by sorting the cards in hand by suit and rank. The differe

Card Hand Sorting(列舉排列+最長公共子序列)

                                     Card Hand Sorting                                                                  時間限制: 1 Sec  記憶體限

[UPC](3025)Fleecing the Raffle ---- 組合數學+概率

題目傳送門 做法: 概率論學的比較好的話,應該可以直接寫出公式。 但自己是根據樣例,試著推了推,也能寫出公式。你會發現,放入x張紙,你寫出來的當前的概率公式分子連乘和分母連乘後都是一樣一樣的。

CSU 1317: Find the max Link 1319: CX‘s dreams 1321: CX and girls

#include<cstdio> #include<cstring> #include<vector> #include<algorithm> using namespace std; #define maxn 50011

2019年總結與2020年展望

一、概述 不知不覺時間走到了2019年的歲末年初,馬上又到了我們寫年終總結的時候了,回顧過往一年的工作,有做的好的地方、也有好多不足,如果說要給過往一年的工作打個分數的話,我覺得打70分,初步達到目標但是還有欠缺,算是鞭策自己繼續努力吧。 二、2019年總結     

十年風雨,一個普通程式設計師的成長之路(十一)再見,2019。你好,2020

00 回顧2019 在過去的這一年裡,收穫最大的便是眼界了, 與高水平的同事們一起合作,讓人愉快。 與高水平的領導共事,則讓人受益匪淺。 2019年元旦前後那段時間,突然陷入了焦慮,買了一些極客時間的課程,加入了一些知識星球。也確實提升了自己不少關於職場、工作、生活的一些認知。 但是收貨最大的還是在工作之餘,

告別2019,寫給2020:幹好技術,要把握好時光裡的每一步

不知不覺,一晃年關將近,即將翻開2019,進入新的一頁。 這周已經在朋友圈看到了來自公眾號《恰同學少年》《Edi.Wang》和《吃草的羅漢》幾位老師寫下的年終總結,他們的年終總結讓我感想頗多,對自己的2019年也感想頗深,對2020年也充滿期待,是時候對過去一年的一些感悟做一個簡單的總結了。 關於“雲程式設計

匆忙--一個大齡十年老程式設計師戰戰兢兢的應當中年危機的2019年總結與2020年展望

背景 2019年對一個大齡十年老程式設計師來說,是艱難的一年,不知道是不是整個it環境的普遍不景氣,還是僅僅我們自己,反正架構調整和優化一直是主旋律,整個2019年都是戰戰兢兢,如履薄冰。為了應對大齡化和慘遭被優化,老猿只好做好本職工作的同時,可以探索一些新的可能, 希望我的探索能對其他的程式設計師有一些

我的2019歸零,2020走你

作為生長在內蒙的,不會套馬的,酒精過敏的,不吃羊肉的,也不魁梧的奇葩,單曲迴圈聽著騰格爾大爺的翻唱歌曲「可能否」,還是開始寫了 2019 年總結,這個總結比 2002

實訓第五天--The great pleasure in life is doing what people say you cannot do

時有 2.3 money 條件 換行 類型 精確 pri 溢出 回顧:1.變量 用於指代內存中的一塊區域 作用:存數2.聲明 類型 變量名 int a,b 3.初始化 int a=10; 4.命名 不能以數字開

The Reclusive Inventor of the Rubik’s Cube Wants to Do More Than Amuse You

This story is for Medium members.Continue with FacebookContinue with GoogleMedium curates expert stories from leading publishers exclusively for members (w

You called this URL via POST, but the URL doesn't end in a slash and you have APPEND_SLASH

錯誤資訊如下: RuntimeError at /picloadYou called this URL via POST, but the URL doesn't end in a slash and you have APPEND_SLASH set. Django can't

k8s遇坑:The connection to the server k8s-api.virtual.local:6443 was refused - did you specify the right host or port?

sys doc 讀數 true yaml pass manager meta etcd k8s坑The connection to the server localhost:8080 was refused - did you specify the right host

The great pleasure in life is doing what people say you cannot do.

eas mil sof detail 做到 tex pad ans microsoft The great pleasure in life is doing what people say you cannot do. 人生最大的快樂是做到別人認為你做不到的事情。The

CSU 1908: The Big Escape 1909: Perfect Chocolate 1911: Card Game 1912: One Boring Problem

#include <iostream> #include<queue> #include<vector> #include<algorithm> #inc

hdu 2018(母牛問題)2019(數列有序!)2020(絕對值排序 )2021(發工資)2022(海選女主角)

amp pre == 數組 sca int 如果 fab main 要發現它的規律,題n年牛的總數等於n-1年的母牛數加上第n年新增的母牛數,第n年只有n-3年的那些母牛才能產母牛,所以第n年的母牛數等於第n-1和n-3年的母牛數的和,即sum(n)=sum(n-1)+su