layout: post
title: Codeforces Round 269 (Div. 2)
author: "luowentaoaa"
catalog: true
tags:
mathjax: true
- codeforcespost
傳送門spa
首先每層確定須要2個做爲基礎,而後剩下三個做爲一個房子code
因此咱們須要\(K\)層那就至少須要\(n-2*k>0\)同時剩下的要能夠正好擺成房子也就是\((n-2*k)mod3==0\)get
而後咱們就判斷木棍可否組成一個K層的房子數學
首先考慮最優的狀況,第一層一個第二層兩個...因此第一層須要\(2\)根it
第二層須要\(2+3*1\)個 第三層須要\(2+3*2\)個class
等差數列求和就是\(n>=i*(3*i+1)/2\)test
開始想二分寫,後面發現\(i\)是平方的也就是直接枚舉暴力就好了基礎
差分一下KMP裸題了,很簡單了d3