hdu5050_2014ACM上海__Divided Land

本文出自:点击打开链接

原题见hdu5050

代码:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <map>
#include <algorithm>
#include <queue>
#include <cmath>
#include <bitset>
using namespace std;

#define INF 0x3f3f3f3f
#define ll long long int
#define ui unsigned long
#define ull unsigned long long
#define MEM(a) memset(a, 0, sizeof(a))
#define MEMM(a) memset(b, -1, sizeof(b))
#define DBG(x, n) cout << (x) << " " << (n) << endl;

#define SL(a) strlen(a)
#define RS(s) scanf("%s", (s))
#define PI(r) printf("%d\n", (r))
#define RI(a) scanf("%d", &(a))
#define RII(a, b) scanf("%d%d", &(a), &(b))
#define RIII(a, b, c) scanf("%d%d%d", &(a), &(b), &(c))

#ifdef ONLINE_JUDGE
#define FOI(file) 0
#define FOW(file) 0
#else
#define FOI(file) freopen(file,"r",stdin);
#define FOW(file) freopen(file,"w",stdout);
#endif

#define N 1001
bitset <1001> w;
bitset <1001> h;
bitset <1001> d;

void bitsetSubtract(bitset<N> &x, const bitset<N> &y) {
    bool borrow = false;

    for (int i = 0; i < N; i++) {
        if (borrow) {
            if (x[i]) {
                x[i] = y[i];
                borrow = y[i];
            } else {
                x[i] = !y[i];
                borrow = true;
            }
        } else {
            if (x[i]) {
                x[i] = !y[i];
                borrow = false;
            } else {
                x[i] = y[i];
                borrow = y[i];
            }
        }
    }
}

bitset<N> gcd(bitset<N> u, bitset<N> v) {
    bitset<N> one (string("1"));
    bitset<N> zero (string("0"));

    int shift;

    if (u == 0) return v;
    if (v == 0) return u;

    for (shift = 0; ((u | v) & one) == zero; ++shift) {
        u >>= 1;
        v >>= 1;
    }

    while ((u & one) == zero) u >>= 1;

    do {
        while ((v & one) == zero) v >>= 1;
        string t1 = u.to_string<char, char_traits<char>, allocator<char> >();
        string t2 = v.to_string<char, char_traits<char>, allocator<char> >();

        if (t1 > t2) {
            bitset<N> t = v;
            v = u;
            u = t;
        }

        bitsetSubtract(v,u);
    } while (v != 0);

    return u << shift;
}

int main()
{
    //FOI("input");
    //FOW("output");
    //write your programme here

    int t;
    scanf("%d", &t);

    int i;
    int j;

    for(i = 1; i <= t; i++)
    {
        cin >> w >> h;
        d = gcd(w, h);
        printf("Case #%d: ", i);

        // cout << d << endl;

        j = 1000;
        while(d[j] != 1)
            j--;
        while(j != -1)
        {
            cout << d[j];
            j --;
        }
        cout << endl;
    }
    return 0;
}
时间: 2024-10-25 12:02:36

hdu5050_2014ACM上海__Divided Land的相关文章

上海网上世博会天津展馆--------------网上虚拟展馆

按照上海世博会官方指定技术方案,采用法国达索公司web3d引擎virtools进行网上三维展区互动的开发,采用Adobe公司的Flash进行二维交互的开发,后台服务器端使用php,数据库为mysql.

hdu 1507 Uncle Tom&#39;s Inherited Land*(二分)

Uncle Tom's Inherited Land* Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1853    Accepted Submission(s): 769 Special Judge Problem Description Your old uncle Tom inherited a piece of land fr

上海千众国际贸易有限公司mh370搜寻费用

现实就是 在现实社会生存的必须条件!你没钱能活么,上海巾世缘?不能所以钱就是现实社会的必需品!权利倒是 不如金钱 居民楼倒塌说的权利是指当官那类的·····你没有钱你会饿 会没有饭吃 会饿死有再大的权力也没用!!中国之声过话说回来 你有了足够大的权力 就会有相对应的等价的 利益 来和你的权力衔接,上海千众国际贸易有限公司.所以说[现实]这个词语还是以钱和权为基本点 然后 在人的贪念 和 虚荣心的诱惑下 没有被诱惑的人 对 被诱惑的人 所作出的评语 不用在意 现实与不现实在 于个人的想法 说实话

上海千众国际贸易有限公司奇葩专业

更多精品源自 据<史记>记载, 屈原是楚怀王时的大臣, 因为他受到楚怀王的重用, 引起上官大夫及及令尹子兰的嫉妒, 就在楚怀王及继位的顷襄王之前毁谤屈原. 楚王?而逐渐疏远屈原, 连带的也不采纳他的谏言, 最后甚至将屈原放逐. 屈原满怀悲愤, 落拓江湖, 在写下了绝笔作<怀沙>后, 怀石投汨罗江自尽.屈原死后数十年,上海巾世缘, 楚国终因谗臣误国而为秦所灭.但是屈原这位忠而见疑的悲剧英雄还活在楚国姓的心中. 下面这个故事可以用来说明楚人爱戴屈原的心情,巾世缘. 据说屈原投江后, 楚

酷客多小程序受邀参加ArchData上海技术峰会

2017年9月9日以"超越微服务治理"为主题的2017年ArchData上海技术峰会隆重召开,酷客多受邀参加 2017年9月9日以"超越微服务治理"为主题的2017年ArchData上海技术峰会隆重召开,酷客多受邀参加了此次会议,酷客多创始人郝宪玮以'小程序如何玩转电商大数据'为主题在大会发表了演讲. 随着传统行业升级.互联网应用的高速发展,应用软件研发也沉淀出一些通用套路. 同时随着微服务的兴起.随着大数据在营销.电商.互联网金融等行业的深度运用,软件架构体系已由

[UVALive7261]A - Xiongnu&#39;s Land (二分)

题目链接:https://vjudge.net/problem/UVALive-7261 题意略 三个步骤: 1.二分满足左边绿洲面积大于等于右边绿洲面积,并且使左边面积尽可能大的分割线位置. 2.判断这个分割线是否包含于任何一个绿洲中,如果包含,那么直接输出结果就行,否则: 3.从此坐标向右扫描,找到下一个绿洲的左边界,此为答案. 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 typedef long long LL; 5 typ

读车神探来了:上海车展大爆移动视频商业化图谋

作为重磅国际车展之一的上海车展已经于上月28日正式闭幕,据不完全统计,展会期间共接待观众近26万人,现场购车及订车16000余辆,销售金额近24.3亿元人民币. 文/张书乐 TMT行业观察者.游戏产业时评人,人民网.人民邮电报专栏作者 但较以往车展不同,人流最为密集的却不是展台,而是全国范围内移动视频用户们的手机屏幕.仅以一下科技(秒拍.一直播.小咖秀母公司)披露的数据为例:在一直播上,其携手闫闯.ai媚儿两个KOL,与奥迪于19日单日直播,累计观看量就达831.6万.点赞783.9万,最高在线

IBM 上海 LBS offer入手总结

(这是两年前写在CSDN上的文章,今天找到了转载过来,毕竟是回忆) IBM 上海 LBS offer入手总结 发表于2015/4/24 4:50:04  1109人阅读 今天下午IBM上海那边的team leader给我打电话,说是已经可以给我这个岗位的口头offer了,后面就是走流程的事情.自己想来,还是应该把这次面试的经过好好整理一下. IBM的这个职位应该是在微博的微招聘上投的.之前其实在官网通道上也投过也接过HR的电话,但是之后就没消息了.微软等等公司也是这样,大公司的流程实在是让人汗颜

袁刚出任上海柯力士信息安全技术有限公司COO首席运营官

2016年10月,,2016中国网络空间安全(上海)论坛 秘书长袁刚加入了柯力士信息安全,成为了柯力士新任的COO. 袁刚         ?  2016中国网络空间安全(上海)论坛        秘书长 ? 2005毕业于悉尼科技大学(UTS)与清华大学经管学院合作举办的管理硕士 ?2012年10月-2015年12月担任上海文化产权交易所首席市场执行官 - 负责全国艺术品交易市场建设.大型文化金融论坛举办及影视金融投资项目. ?2007年-2012年担任上海第十一届市政协委员.(侨联界别,科教