1 条题解

  • 0
    @ 2025-8-24 21:28:39

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar LogicNotFound
    **

    搬运于2025-08-24 21:28:38,当前版本为作者最后更新于2024-01-27 16:51:25,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    想要满足 kk 个小朋友,每个小朋友的饼干数都不同,那么最低满足要求的分配方式就是:从 小朋友 11 到小朋友 kk,分配的饼干数量依次为:1122,...,k1k-1kk。即最低满足要求的饼干总数为 (k+1)k/2(k+1) * k/2 , 公差为 11 等差数列求和嘛。

    而只要饼干总数 nn 大于最低满足要求的饼干数,那么说明能够分配。多出来的饼干,都给最后一个小朋友就行。

    最后上代码

    #include<bits/stdc++.h>
    using namespace std;
    int main(){
     long long n,k;
     int t;
     cin>>t;
     while(t--){
     	cin>>n>>k;
     	if(n>=((k+1)*k)/2) cout<<"Yes\n";
     	else cout<<"No\n";	
     }
    
     return 0;
    }
    
    
    • 1

    信息

    ID
    9733
    时间
    1000ms
    内存
    512MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者