【#254_DIV2】-A B C

來源:互聯網
上載者:User

標籤:codeforces   acm   

題目連結:http://codeforces.com/contest/445

解題報告:

俄國人今天不知道為什麼九點鐘就比賽了。只過了兩道題,第三題完全沒思路,有時間單獨去刷第三題吧,看起來很難

A - DZY Loves Chessboard

太水了。。。

直接W、B錯開填,順便先抹上“ - ” 就完了

#include <iostream>#include <cstdio>#include <cstring>using namespace std;char grid[120][120],ans[120][120];int main(){    int n,m,i,j;    cin>>n>>m;    for(i=0;i<n;i++)    {        scanf("%s",grid[i]);    }    for(i=0;i<n;i++)    {        for(j=0;j<m;j++)        {            if(grid[i][j] == '-') {ans[i][j] = '-'; continue;}            if(i%2 == 0)            {                if(j%2 ==0) ans[i][j] = 'W';                else                    ans[i][j] = 'B';            }            else            {                if(j%2 ==0) ans[i][j] = 'B';                else                    ans[i][j] = 'W';            }        }    }    for(i=0;i<n;i++) printf("%s\n",ans[i]);    return 0;}


B -DZY Loves Chemistry

並查集直接搞,答案是 2 的 (n - m)次冪。

n 是藥品種類數,m 是並查集並出來的集合的個數。

#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using namespace std;typedef unsigned long long ll;int arr[55];int find(int x){    return arr[x]==x?x:find(arr[x]);}void mer(int a,int b){    int fa,fb;    fa=find(a);    fb=find(b);    if(fa!= fb) arr[fa]=fb;}ll p(int x,int y){    ll ans = 1;    for(int i=1;i<=y;i++)        ans *= x;    return ans;}int main(){    int i,j,n,m,from,to;    cin>>n>>m;    for(i=1;i<=n;i++) arr[i] = i;    while(m--)    {        scanf("%d%d",&from,&to);        mer(from,to);    }    //for(i=1;i<=n;i++) cout<<arr[i]<<" "; cout<<endl;    int t=0;    for(i=1;i<=n;i++)    {        if(arr[i]==i) t++;    }    ll ans = p(2,n-t);    cout<<ans<<endl;    return 0;}


C - DZY Loves Physics

去看這道題的AC代碼了,,,我擦,,,不該放棄這題的。。。

哈哈哈。。捶地笑,,,其實就是。

只剩兩個點了!!!!!!!!!!!!!!!!!!!

不信你拿這個代碼去試第三組資料,發現沒有!

int main(){    freopen("input.txt","r",stdin);    int n,m,c,from,to,i;    cin>>n>>m;    for(i=1;i<=n;i++) cin>>val[i];    while(m--)    {        cin>>from>>to>>c;        cout<<(val[from]+val[to])/c<<endl;    }    return 0;}

完整的AC代碼如下:

#include <iostream>#include <cstdio>#include <cstring>using namespace std;double val[550];int main(){    //freopen("input.txt","r",stdin);    int n,m,c,from,to,i;    cin>>n>>m;    for(i=1;i<=n;i++) cin>>val[i];    double ans = 0;    while(m--)    {        cin>>from>>to>>c;        ans = max(ans,(val[from]+val[to])/c);    }    printf("%.12f\n",ans);    return 0;}


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.