CDOJ-P65 CD Making

Posted houraisankaguya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CDOJ-P65 CD Making相关的知识,希望对你有一定的参考价值。

链接 https://acm.uestc.edu.cn/problem/cd-making/description

依据k分两种情况:k<=13时不用解释;
k>13时,若n整除k,k除n即为答案,若不能整除,要注意n%k=13的情况,此时若k>=15,则只需多取一张CD来存放剩余歌曲,例如k=15,n=43,此时一种放法为(15,14,14)而不是(15,15,12,1)。但若k=14则需多取两张CD。
其他细节参考代码。

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int t,n,k,ans;
    cin>>t;
    while(t--){
        cin>>n>>k;
        if(k<13){
            ans=n/k+1;
            if(n%k==0) ans--;
        }
        else if(k==13){
            ans=n/12+1;
            if(n%12==0) ans--;
        }
        else{
            ans=n/k;
            n=n%k;
            if(n==0);
            else if(0<n&&n<13) ans++;
            else if(n==13){
                    if(k==14) ans+=2;
                    else{
                        if(ans>0) ans++;
                        else ans+=2;//注意n<k的情况
                    }
            }
            else ans++;
        }
        cout<<ans<<endl;
    }
    return 0;
}

以上是关于CDOJ-P65 CD Making的主要内容,如果未能解决你的问题,请参考以下文章

python 一个终端代码片段,在mac上生成可启动的usb live CD,以运行类似ubuntu或debian的内容。

Python snippet(代码片段)

插序计Spider.Financial.NumXL.v1.65.42892.1.Win32_64 2CD确准

python+spark程序代码片段

[USACO08FEB]修路Making the Grade

[POJ 3666] Making the Grade