#269(div2) C. MUH and House of Cards
Posted 早知如此绊人心,何如当初莫相识。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#269(div2) C. MUH and House of Cards相关的知识,希望对你有一定的参考价值。
题意:给出N,问可以组装成不同的层。
思路:发现第一层的mod3=2,第二层的mod3=1,第三层的mod3=0,第四层的mod3=2......然后我们判断N是否足够建立该层最少的所需,第i层所需=3*n*(n-1)/2+2*n,for循环里的i也要开longlong ,不然超时,别问我为什么知道。
1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 5 int main(){ 6 ll n; 7 cin>>n; 8 ll sum=0; 9 int m=n%3; 10 ll y; 11 if(m==1) y=2; 12 else if(m==2) y=1; 13 else if(m==0) y=3; 14 for(ll i=y;;i+=3){ 15 ll x=(i*(i-1)/2)*3+2*i; 16 if(x>n) break; 17 else sum++; 18 } 19 cout<<sum<<endl; 20 }
以上是关于#269(div2) C. MUH and House of Cards的主要内容,如果未能解决你的问题,请参考以下文章
#269(div2) B. MUH and Important Things
CF #738(div2)C. Mocha and Hiking(构造)
CF #724(div2)C. Diluc and Kaeya,暴力,构造