• 计蒜客 28201.Choosing Ice Cream-gcd (BAPC 2014 Preliminary ACM-ICPC Asia Training League 暑假第一阶段第一场 A)


    开始水一波博客

    题目链接:

    A. Choosing Ice Cream

    传送门

    题意就是n个冰淇淋,骰子有k个面,问你是否能在公平的概率下转几次骰子能确定买哪个冰淇淋。

    举个例子,假设我只有一个冰淇淋,我不用转骰子直接就会买这个,所以转骰子的次数是0,如果我有4个冰淇淋,2个骰子面,我可以先把冰淇淋abcd分成两部分,ab一组,cd一组,这是等概率的,我先转一次骰子确定是选ab组还是cd组,然后再转一次就可以确定买哪个了。如果我有6个冰淇淋,12个面,我可以每一种冰淇淋贴2个面,转一次就可以确定了。个人理解是这种意思。

    这个题读题猜题意猜了好久(捂脸==),题意猜对之后还是没过,最后发现是gcd是变化的,所以每循环一次就要重新算一遍gcd,1的情况特判一下就可以了。

    代码:

     1 #include<iostream>
     2 #include<algorithm>
     3 #include<cstring>
     4 #include<iomanip>
     5 #include<stdio.h>
     6 #include<math.h>
     7 #include<cstdlib>
     8 #include<set>
     9 #include<map>
    10 #include<ctime>
    11 #include<stack>
    12 #include<queue>
    13 #include<vector>
    14 #include<set>
    15 #define ll long long int
    16 #define INF 0x7fffffff
    17 #define LIT 0x3f3f3f3f
    18 #define mod 1000000007
    19 #define me(a,b) memset(a,b,sizeof(a))
    20 #define PI acos(-1.0)
    21 #define ios ios::sync_with_stdio(0),cin.tie(0);
    22 using namespace std;
    23 const int maxn=1e5+5;
    24 int main(){
    25     int t,n,k;
    26     scanf("%d",&t);
    27     while(t--){
    28         scanf("%d%d",&n,&k);
    29         if(n==1){
    30             printf("0
    ");
    31             continue;
    32         }
    33         int c=__gcd(n,k);
    34         if(c==1){
    35             printf("unbounded
    ");
    36             continue;
    37         }
    38         int ans=0;
    39         while(c!=1){
    40             n/=c;
    41             c=__gcd(n,k);
    42             ans++;
    43         }
    44         if(n==1)
    45             printf("%d
    ",ans);
    46         else
    47             printf("unbounded
    ");
    48     }
    49 }
  • 相关阅读:
    document.body.appendChild 的问题
    页面不刷新,表单提交到弹出窗口或Iframe
    您对无法重新创建的表进行了更改或者启用了 阻止保存要求创建表的更改
    转载:兼容各类浏览器的CSS Hack技巧
    sql server 代理权限问题
    配置SQL用户访问指定表,指定列
    关于嵌入式系统的启动(装载)
    centos 中安装g++
    嵌入式中利用ftp实现宿主机与目标机通信
    TQ2440加载Hello world驱动模块
  • 原文地址:https://www.cnblogs.com/ZERO-/p/9279800.html
Copyright © 2020-2023  润新知