Boring count

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 932    Accepted Submission(s): 382

Problem Description
You
are given a string S consisting of lowercase letters, and your task is
counting the number of substring that the number of each lowercase
letter in the substring is no more than K.
 
Input
In the first line there is an integer T , indicates the number of test cases.
For each case, the first line contains a string which only consist of lowercase letters. The second line contains an integer K.

[Technical Specification]
1<=T<= 100
1 <= the length of S <= 100000
1 <= K <= 100000

 
Output
For each case, output a line contains the answer.
 
Sample Input
3
abc
1
abcabc
1
abcabc
2
 
Sample Output
6
15
21
 
Source
 
题意:找出一个字符串里面符合每个字幕出现次数都不大于K次的子串的个数。
题解:数据量达到了10^5,所以O(n^2)肯定不行,所以要用到尺取法。
整个过程分为4布:

    1.初始化左右端点

    2.不断扩大右端点,直到满足条件

    3.如果第二步中无法满足条件,则终止,否则更新结果

    4.将左端点扩大1,然后回到第二步

尺取法的过程是上述,但是,对于这题,我们要做少许改动,因为尺取法的条件终止条件是无法满足条件,但是这题我们首先扩充右端点的话是一直到不满足条件(找到某个字母出

现次数大于K的那个串再break),所以这题我们的条件应该改成r在外层循环,找到无法满足条件的子串后再一直扩充左端点,直到满足条件。接下来怎么算子串个数呢?我也不知道

,discuss区里面这样说的。。

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAicAAAAjCAIAAADAPD21AAAMHklEQVR4nO1cPWsrzRXWX9hWxXt7c3ETMIoStYGQ0kUcX8MGgSGlOheGKwxasJo0AcMV6BYu1CzoFwjjylJhGxksXGxjwhQm1bryYsx1ivmeOTM70ivve8V7xIPRrmdnZ87MnGfOx6hG8gKBQCAQiGpQ+81bgEAgEIjfD5B1EAgEAlEdkHUQCAQCUR2QdRAIBAJRHZB1EAgEAlEdkHUQCAQCUR2QdRAIBAJRHZB1EAgE4veCYRzVoubxFb8zateiqBanVbZh81hnMrhuDYh6WT+YKbjuTtXypNuZxeOC5AWZLlpayVn9gP6LdDvm/frBrH4wH4p6xvN6koE1QLjuTgsyXbQ6iwkd6WSmtpnkpNtR2+lqANSSPIu1y1Ch1ZPMXSCLD7iUnHfApzwtyWJjLKaLlqP8MIHe5S4vhcYlDHdZawBtLdhT9hZrLs3qBzOH3Kze6aIrnx5iXrlLGjJZQUo/+bg7x5GJxXoqpCqP5J2zpXRN8Zp9wvwIpLtRVIuird6Nfv/muBHVGv0L/l0UuOg1VQoZxsaz6W4kHixIHsQ6F71mzXjq1yGEdW5fP9feaxT7L5UKneH5ZPv9c/KcFyQvJtNFrAy/TkLqjDcXfzyQNMCGRF/Gk8E1MPvpHco6/nYaS2Kqvs5Yijbr2PrRUe1KrEOXjc58mhyMxdlNYA1olvQoaCE6RbyeBuiaji5yo5ul3DyrH1x3x+DOgPINrdBQrBrrmC1Uxl1vpD6gVmf1Zrv4yfOgsltaTkobMu7KBo51SiVghzDLSNQJ2n5VemE9klNOdsHeKHwYFQ3jqBYxUPK46DVrUfP4SrIOowTGCoyldkcFyQty1d+KolrUljPkqr8VRbsjrWYNjf5F7v6vhrY58a76O1EURVHU6KvD9z2md9vf+Z1QW+f5ZPt9L9QKez7Zf52FCzd9K6v5Zc8gPLHmjcVp70AVFeO0dURJoZV4JWtjHWPBrNPWMXfoSUZKF5WytgXXSqU2ntM32vrC0ryWOciLqS9qDQhgASjyVKplooC221Johvbx8Jk+EwwFbTRp3vWyDivPLuUksYwqZ7MBrGjrOKW0MeNuWy0wAZcajny34ZM/QGOBPRKFNdYxWPZjWIep/kb/glo2UbTVu7FZh+SUSzgHUKaJU2YPqc40SVoFuepv0ccVW+ei16TcRl+9OxK8pVXCLTCDddIvjGzSL1EUceNp0muy76O2YKPaH//0592//+P03//xi2AJ1pklP2rb4azzslcrrVmxdbT5MRlcG3s9Me/plJIamfrHnLaOrhrEkoBYx17YCqs5WUd/xWq2jr0Cr7tTXUfwdsLeGBW0a1ojSbczH7K/QkTaeg7XPqIYbZ7pY9TXKi0/TErVx3WcQE4wg54tVR4ntnLnLVdGLcDDJnY5nHXKlc6abR2/lDZm3ENZRyJsb6FjumgdwKbeT846CuXQO9zV1rBYZ9TmBMDKQKC0QQs0j68U+pGsI+vkrOOskNlSKkbpd/m9zS2b9EvU/MoY6+Zrg32vRfzjJx4n68ySH8z5VnsbaZc/Tm7Zg8ol99ftv8yS1xE1Ysp9d5J1pmTIt5Y25QBzrjOPO2ytxgO3rQNuOZPMxTrKfDXiRh7WUWHsu5exdTQScrKOv1pgHTp3mqb28bXTpX061khBrFO2FINtHa0vfICmixZkzQwTKV6fh81rlICmid1ss+agXbysNkxKGzLuuuOhNSAlrOMWl5uKfHwf1CPgpfNhEOs8fTu7/3ZbkMnDYf/usP+Q5gXJi/T87rB/d9i/O50Ul+P704lrBNNdRjCmR4vnAgiGEMRg2zQWN1CCEbYO9dqN2jXji1ZY5Rj+rtLUg6v+DmUd8SUvSF58j6Od3g1RWeeXT588FblY52WP0Yk0WVRbZ7TPyIbffD7ZfhsVJE/fKEuF2TpktK+WCXPvUnWjs4I3rmNiSiYfxDqOfxk8CsSZcoN1LH9Iyc7LFYF3xZA9MfMC8lkBguXN01QAH8Ew/wlrsM46HtXjYp3OYmjwiqb7ruPE72ErnWywF9fNJapBAxg36ugES2kjxt00MRnruBh3PHexi5z8y0k+tEdCSkvZOun53dH4ieSPp+ePJH887d8djZ/IbXbUvzudFGTycHiWXeZP387u3MQDA/SwWSkDIOswNx3nJ14DJ5thrDjNRm3+uHjKbeXYGLVtrxpZI+toBag5orCOYsowc0fNC6DQ6Uq3e2bJGyUtwV72WnItv+milWRhOWzaJIZDo2tlHYA1oSXXGmSTMVkb60wXLViV8KB0aYwheL8P+fcLVccZVoUiUs/697qqvMJkjU8y/b000r5YKYcNkOFytg40gW1PoBEAD5DShow7yDpye6F0fDyvdxZDcGjsDUeg5JexXCeDeUuNopWyzuRBGDckLyTZ5I+n/bvDsywd3x+Nn1jJs+zSN3w3xw3N/TUE4zpihriyAOKUWFYRjeJQfmK2jm7EKLXxNyoZB542f21w+6aUdf55+C/P3PWyDk9yM1nn9vUzM2ichRXWedmTZGPSj8464I5JLCQrR7nc1oHN7c5ibbaO6UZ3aCgezuU1ZDGYVMruuFlnmX3fMJnVO9eOhFR/phbgJxTytPa82iNu1vH497PYmaIGah+tedQ1r72X7UsCc9jKM+hWYx3D1vFQS7mUNmjcfR42YM26gjreYI+XdcJ6RBvQTejuRG5foBnCcDm+Pzx/5JePp9ylBlzeZkf9+2+3QAsvek3pUmv0L3iOgMvWMWL7DlunuUXzC0Y0R8AVs1HDOUYegZIy57B7Jr32V/GIx8P2y6dPf/nr3x7++z/H4BUEYp2Xk+SZWTPMdQayDmSjsH9xsgnwsM2SV9lDayvEZgzpduAkzmCHeKitA6sbmHWoe0RTf3X9ToBGk4tHCWwuZes4qE42UsowOD94Be0D3wRS2H1nNcy+ODyTWXwwjxMt+C/eCyp3f+a0F2uydcaym9YZrzApbcq4K3WKvAOV4AEnxHptnaAesRrYWFChlbFOen6nsA6/c5Zd5o+n/YdUXhaUhGAnG4+7UPo55sF/iHV4rlqv7SIS5kMbpfARUYtdSjOntxpNIHM6L8iovaMfD1KyCeT3GskLP99QmKzDAi3pG3emgR6255PtdxHjmSWvIxHXkaGaINYxZowdooTmn1i3dDGwiSvcbgPgxJkzYuS0dfSVbGTCQE6SOtcp5l4V0KrcNTHNhvIQknog6VezDrDqjFeEHmk0PC1+7WOoVM3oVKPNztRzUVLNZjbEyDrFaD7JlMao0viNWQeI61A5u5N9PVLalHG3FpoaYYJZZ822TkiPpouYK5DwuI6wdS7H94xdJg+H54/C8ybvu20dI+5i+bUU1pGp0vJxOJvA/GECkVqd7to5AlC1JC/MpAP9kR1R/qr/pXdDjMxp/t9lT4lKyFwAGrP5vP1eo/zBy++lRMlho5z0fLL/g9UmMw60Swgve9Ijp+yJ2LSDvRz6TwPokxg6mmPXpi7m5c/rGO20VYkkHu5tiMdkoh5CoukMCqFqdSrOB23BOFlnhfjw6lFl727UVCuivFlSalXnI+40Yt48ZZvClRRA3vZcUuUZcg7GnQsAthDOEWgNMmEA2ZnTZVLalHGHRlPPvQxkHdsiDO5FUI+At5SeEr3NjmhchyWwCcvm6duZzGEjeUlchzvZtHi+lk6mnBINyCYoiM462oM2l1z5vHAA64zakfYRJg4/JaoEeDbtF3FkaJQtWigR1tJE1kSxYz/8X87z8M4No1K59xC4Pa2pRpAZMorW0wtTPuNuAVFMPOWxdWSdvh2xO5N7iae0/gJ7Xufh84BfYaEUax9oN4dPmxsAXYk2aD8b8RG2TqAM9RqSudo1/WhOyG/VbMi4GxFW098VwDqyTptXlpW8r0eiXyvlsPlf6sthU31cOnnIoAu9bzrN8oIEsA6rXzFlTPZawdYJxqaxDgKBQPz0SM9drjMG73mdjwJlnd0YMI9IriZMfyyQdRAIBAJRHZB1EAgEAlEdkHUQCAQCUR2QdRAIBAJRHZB1EAgEAlEdkHUQCAQCUR2QdRAIBAJRHZB1EAgEAlEdkHUQCAQCUR2QdRAIBAJRHYJY5w/4wQ9+8IMf/Kzjg7YOAoFAIKoDsg4CgUAgqsP/AUphrt3bxtxeAAAAAElFTkSuQmCC" alt="" />
队友的解释:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWYAAABPCAIAAABXkPgLAAAOzklEQVR4nO1du64juRGdj2n9igR9RwOd6CcUdNZ/oEyZcqUdK7trY2FD69mdNSyv1zO2M8O5g+ajiqwiixT1GKCAE8xcUXwUi4dFdqvOp4/rTaFQKIT49PIeKBSK7whKGQqFogBKGQqFogBKGQqFogBKGQqFogBKGYrbYej64+08bleb6fzqzijeHBxlXPab7X6+fVh/Iosdhq4fp3XXrRYM035j/93tDrbMeryYrxx3K1e4697BQQ9Dh7oUYDiF44WmmKc1LsDg1EdVxTiP20QZvp/Gzq6Yt3aJEfrj7TxfPo472IfDgLs9T+vOeEXlSI+7VaaG28c8rbFjkB4YjjT6VrF5i0eKLF9mEOs5Zmi284m19j5gKMNNQGomLvvN7uAKIG+77DfeoH52YZlEzcfdKjcfZgltprOdXf+X+gnOAXnSqQ+8ivazy37TrYZd32W94bLfcAveMbin8tjOH9dT74YfsDNw3PO4TbGkKxnx+z6grdDUS/+n0CzIPlRzuJ7zuA28hVpI4YQKFhtvXtlI03ajWk9N/TJMs+kaCwSz6UtiE+Wc2fhhwp3uAk0ZbgLozW1xqYUpBZRBeMO1AWWYaYALFXYmvSryCxi1la1ttZgiXC2L05zCfpKemuok8JJ5WnvjIO85j7v9bP+I4wU4O2gW7F+oNbndz3gBb6ZzyFlopKC3UZl5Wnfb9SYw+ylaTkR4G9IBttt6vJjN3GO7n+XmlY4U2w1ZniKs1NQT7GM2P2qVoSnexqFlCN8cNRF3g6IM10tjO/SpM5yJ9OA4N1sw5mhUgeFaUUbQxEOjjDJEQWlggWBVJ8YYjMt/EVMJ3JPrKMNO/WHw/TwMy5YFeCo0cuyaeL0Bvz8MZtM+DJST+KkPWAAQBBzacbceL3hEtmmZeeUjLYkyclMPKnRfRLNg24VDM6cnTCJpxHN9P2LKuOw3Zi4PQ7Sb+e5aoyTPkOCwQO4nMC71LtIPyG/6I/jo6GtORRmucg5mGxGED2TJ4eRdEx7ibE8Cb0g4E+OIzr1knRxOvh7yWNGxB5Pl4hNtA6i3FPWLFxLlr25Esd9734M9IaIMSBnDDnsgYqucectGKokyhFO/MGY/uKk57Te2fn9HRsV0WcqgV0QzhJRxHrerYReZLzToedyuN9uQMpCbFnUanru831gesU2Dy7McZQgcggJzJMbnLOOyLGWEd2nRJnwet3wYRV2YwbACDjAc72U/gLnIRxn2NBGMCFiDWPOg0ext67Ly8ckOXgZFrGd8L7wLS1GGOZi48tzRiTevYKRCjxJOfW+L+WdVy9ZoL01sZxgik1PGA84mIWUcht0BdNSS/clOpD1ejtN5mTlwMAEXOThg5m+P/Omxw2sSRRlgSWyi8y1FGdLbB2oN9MfY7YqjjMi9ZNM2T2tqZ0b7GzwtYp8+DNv9uDPdS1KGNam157KtxV/ptvuZPiCA8LAC9FVX4HtwHebuMqDxecpgzCsbKf9pyhqpqY94ajEL6D/JDmWUkSbQGpDXn+QxxP3F9sBRhjcWdYxEhwXYe2/N8E44SRmLlQuijHlab6YDuOELtgJ8miWvD8qiDJnfyI9F4ZpBh15oZ8iD/MEE1OZmZFkP+J6FDuBjI4s4RXx+WTwtWScRZcCOuYUnM690pAGXRf8toYx4S1tm5Dxu0TlLRBnQVtEifS5lwNECA7ldjqCMJSqZwquvzXSep368BFchfhlIowz/XyFlADLyPsRGudGhFJ+VHh1lpB5GJF2f+hYbZcBWXMfgwfDUd7veXAT6T73RCMqgNr3s43n6I1mUQVJGpnLavAfpSNtGGcEDJnhpGDj82x9MmI5SXY8OJuvxQjz9NgWQUcJ1ez31HXTZDt1lgNtj+IZYhjKWKBTfjbnrem5c2DuhJzWPMqQ+nQL11hOxFV+Z2xDrfCYECN/Egf3B0XItZdiAztiTet/0fsrg7q0S5pWMtGWU8TGfDrPbCVCQi9nnYdef+XfVWLSgDMzE6/Hkn0gHzmq2aPOSKMUs3Wp5pwBGGSP4KHYj7i4DLoClcr+wTaQQX3Yy73eSlAHKvIgy0AOO424VBG4UZZjQCRjBxnTBVSjfn6qDydIisa8e7eUL72miuwzU0D2UkRhpbkXQxZIvtpnXxuxJKvBe8ilpCWWw77zmnkAnkKMMNz1xAwFl4MMF3s8Nocbrk64ZuyP5zpX0vYyl/9mLOu+FnLe5U6J3U3c+zz36zlGGa110oQjPKYUHmc20H/BX0KwF08TeAePxCqIM14qjqig4SjwjkEQZ8K4knI68eYUjDea0njKid1JglH37gEu95C0MuePd82b6m/8sLUUZgRMkXxhXKL5X1P5c8LkvjL8NWMpQKBQvwZtThkKheC8oZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigIoZSgUigLwogTNNI2in9NRicubgs7v6Ib2tnI+3w9Eylg4h2Xws1qUaD9XLJdkqOZ33KIhwPlK/8RLIotVKtfUbrKK0gJlQFJGS02jMINbrCtDK4CkkfjpcVJq6K3lfKpFbursdscvHWGKEN7tEBfw4xIWQ63X5nooHULgCSlmyefCSudzotBGA6wiG0gKjI5JK02j5df+QYbbJZd0mH9F6vpJ9Zek1JBY5IbyEsoJ5nZyPtcwM0KhyE2d3SqzvGWVsSLdAzp8EBaTSUw0HkK2UZeDNtUxV5tQrino5/0aYGnrtaKMhppGLhOvy3BrFb0yGpkfjGpLUv0lOkHgjr21nM/dIjd1dquRxnGVJJWxsE5NInwQFgPGbBJiiIbAWji7kkMI5ZpYz2EhyDX18CjDLrxkjXJNI5HGFLVbpmaOcv2VTGroTeV87s/yWGW3cr8RKmPdzuOuH7Z2bUzcXYakWF5EtmzDlA6BRMQXslTSBXJNfl9poQFG9bBtlNFa0yhAqFjXhDKKpIbeVM6nQS7pYruRtkpDqIzljp+ZSwphMQPyUFyXMFUwBApUFClLJS2Va3q0BlgDRNJHbTWNKqIM6kIxfeyPwC+Dt5XzESlWRGhgt7IlJ1XGGkx0kH4UIixmJ47zojLKEA6Bml/SPcRRRrw6/PQBASCROodUA0wUoBUe9Kjrz3aaRtHaYHK3N9gtIRjKeGc5HxFlwBpcFH2n3SqkceIYHv7F19bqiYmNIslAoE7aRzoEYDduaVVHGdDxGJWGthpg9eZCEFJGraZRXranlesHDnGPyE3o06jdB8n5fCcHE9DVU1IZy9jZdAbfMmKFR0kx10qDKEM8BD9TySaq7jI4uaYHaYAhoYl7w+okZaANs07TCLnyatiF2wivANI+ygA+Gv77DspoI+fzbtefqce38XDouwzYmSj+tytKUiw1Kfy2eecQrrHGCudRd0QZYeun9hpgqM7nRRmnek0jG8CbKx+zBeFzVOkrSW0oA1f4Wjmfu0Vu6uxWJY2TX2/w4Tr9vuM8rYeTsFhuUvh7qzuGYHb4vA6OTBZLLtfkt+oGGmB2p3cr9zmUUa9pFDMIp0PXFnLKeBs5n6uAIJ5oqOSLiRE5Jrbi6FKWrlZUrCzKuHMI4C0e/nANlfTsEGhZrFK5JqLDFRpg6GTAXr01uP5UvAi1Ijd1eJQ0juIBSFFGsF09WgNMKUOheH+wlPF8KGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCKGUoFIoCELk/kxlx4E/fJGlIZenkU2nagp82Fv96N53Ls5kaTcEQIBKJeRoizpmMZjy2TzrLdpRs1RsBqWGVpwIvnw5Rzk5FQ+SjDNY/apKd5yfY52IiMpHwjSb7z3t/nOih1Y9/hK7MUEZpIoxUc0ktKIIdDL+c5wssI9tFGDUsaZ9F0yHKJqt4GHKUMSeUqQRRhnTvlWvbhJSBHYjM38dQRp0aTdpW7BBgLum0QfgMlAzu0IIyX6fSQDFlQh2suEKQk46nDKLP4unAHIdY5juXrfw+kKGMw7hNZrvMRRmh33DbiK+KiDLYdMkmbWT6zJKijAo1mgTCPGaQJuikVeijXBDeXAsKVkuLNsEymzJtl4S0Fd1n8XRolPFaJCnjuOuPiTxaUkkVJ/nRH0+9S46GvFlEGbikz7WZpQw6ii5Qo5FBTBlgtbiPYim2J2lBSQTTRFFG6W1OmjL46dAo47XgKcMcSU49lzK/JSoOJgWUIYwyGDUaMUQHEwPb7XgUrqqHa0H1eT3RaJWGvMCaKIoyInvmogzZdOj157PBUQZIebyZzvPlfNzB+FP2YGXKndvpkCS56TWljDi0jtVo5NYURBnSB1JP04KCdMCfjMqlW2MNIQFliKaDz+RMuZOiOUjKwAqR4RNT7ppNsMDYhyByZnFL8RFRxu3jGqrRFFhTfjABRluTGlzPU2kI5aP5nLQlCb4XKRA0Ckq4IBNlkNMR1BP9VynjwaBlnFP6ZlAYRiCpktlXw8u56EDOtm58pT1lXF1tcsooYj3berc16vMxQbyIMpiS3rCYU7iEw9CFbJk4hBFSRjgdGmW8GJEma6zilXrJIi+p4pY0lLchH90fxl3vJQJOpARmnOn/YZTB6xJwyy+lageqQmp98PoTRHAvowyy6fCK0SljcderRD/jZ65llAHFgTTKeCWyr3JxcyCVVJFThm+RC0Ogogr95PXuuwwHbhEmXjcQUAZWgblFsYx9nPE8LSg7HfO0DnS67DCDi0zwBCpqEVVCtZLoc9106PXn01FHGQWSKgxlTD30DOQusWhVZ2U+u/7oC7vagiiDeKpK9q1KjSb1GC+mDDeuGiXXhkhRBit7cdytuq4/Llb1J69AGRTZkwhPeH6Jm6sRB1LKeDb0Z2kKhaIAShkKhaIAShkKhaIAShkKhaIAShkKhaIAShkKhaIAShkKhaIAShkKhUKKH//y26df/vafH376+8u7olAo3hx/+vz7ly9fP3379r9/fv3v57/++8ef//EH5Q6FQgHww/X2x59++/Pn33/+5euXL99+/fVf/wddkz/2mqOFkQAAAABJRU5ErkJggg==" alt="" />
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <stdlib.h>
#include <math.h>
using namespace std;
typedef long long LL;
const int N = ;
int Hash[N],k;
char str[N];
bool judge(){
for(int i=;i<;i++){
if(Hash[i]>k) return false;
}
return true;
}
int main()
{
int tcase;
scanf("%d",&tcase);
while(tcase--){
scanf("%s",str);
scanf("%d",&k);
int len = strlen(str);
memset(Hash,,sizeof(Hash));
int l=,r=;
LL cnt=;
while(r<len){
Hash[str[r]-'a']++;
while(l<len&&!judge()){
Hash[str[l]-'a']--;
l++;
}
if(!judge()) break;
//printf("%d %d\n",l,r);
cnt =cnt+(r-l+);
r++;
}
printf("%lld\n",cnt);
}
return ;
}

hdu 5056(尺取法思路题)的更多相关文章

  1. HDU 6205(尺取法)2017 ACM/ICPC Asia Regional Shenyang Online

    题目链接 emmmm...思路是群里群巨聊天讲这题是用尺取法.....emmm然后就没难度了,不过时间上3000多,有点.....盗了个低配本的读入挂发现就降到2800左右, 翻了下,发现神犇Clar ...

  2. POJ 3320 尺取法(基础题)

    Jessica's Reading Problem Description Jessica's a very lovely girl wooed by lots of boys. Recently s ...

  3. HDU 5358 尺取法+枚举

    题意:给一个数列,按如下公式求和. 分析:场上做的时候,傻傻以为是线段树,也没想出题者为啥出log2,就是S(i,j) 的二进制表示的位数.只能说我做题依旧太死板,让求和就按规矩求和,多考虑一下就能发 ...

  4. 【尺取法好题】POJ2566-Bound Found

    [题目大意] 给出一个整数列,求一段子序列之和最接近所给出的t.输出该段子序列之和及左右端点. [思路] ……前缀和比较神奇的想法.一般来说,我们必须要保证数列单调性,才能使用尺取法. 预处理出前i个 ...

  5. poj 2566 Bound Found(尺取法 好题)

    Description Signals of most probably extra-terrestrial origin have been received and digitalized by ...

  6. hdu 2739(尺取法)

    Sum of Consecutive Prime Numbers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22876 ...

  7. hdu 5701 中位数计数 思路题

    中位数计数 Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Subm ...

  8. Codeforces Round #364 (Div. 2) C. They Are Everywhere 尺取法

    C. They Are Everywhere time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

  9. codeforces #364c They Are Everywhere 尺取法

    C. They Are Everywhere time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

随机推荐

  1. 使用Xshell对虚拟机上的Ubuntu系统进行远程连接

    需要在Linux上安装openssh-server 1.在Ubuntu系统的终端下输入命令:sudo apt install openssh-server 2.在Xshell中输入指定连接的主机IP, ...

  2. 精通SpringBoot--整合Redis实现缓存

    今天我们来讲讲怎么在spring boot 中整合redis 实现对数据库查询结果的缓存.首先第一步要做的就是在pom.xml文件添加spring-boot-starter-data-redis.要整 ...

  3. POJ 2161 Chandelier(树状DP)

    一.题意 首先是对题目的翻译.给出一个长长的字符串,这个字符串描述了一个吊灯.对于给字符串只有两种操作数——'a'为一个吊灯灯珠,将改灯珠入栈,一位阿拉伯数字K,代表一个环,将把该数字前面k位数都出栈 ...

  4. 扩展程序 - Google Chrome

    Adblock Plus 3.0.3 Adblock Plus 已被超过 1 亿台设备使用,是世界上最受欢迎的广告拦截软件. ID:cfhdojbkjhnklbpkdaibdccddilifddb 查 ...

  5. Python 技巧(三)—— list 删除一个元素的三种做法

    我们以一个字符串为元素类型的 list 为例,进行列表元素的删除: >>> l = ['no surfing', 'flippers'] 1 法一:remove(val) >& ...

  6. 如何排查Java内存泄漏?看完我给跪了!

    没有经验的程序员经常认为Java的自动垃圾回收完全使他们免于担心内存管理.这是一个常见的误解:虽然垃圾收集器做得很好,但即使是最好的程序员也完全有可能成为严重破坏内存泄漏的牺牲品.让我解释一下. 当不 ...

  7. play后面加the不加the如何分辨

    play表示“参加(某种球类运动或棋牌类的活动)”时,不需要定冠词the,后面直接加球类运动名称或棋牌类活动名称,可根据实际情况翻译成“打,踢,下”等.例如: 1) He often plays fo ...

  8. Django 四——ModelForm用法

    内容概要: 1.新增数据库表中数据 2.更新数据库表中数据 Django的ModelForm Django中内置了Form和Model两个类,有时候页面的表单form类与Model类是一一对应,因此分 ...

  9. 纯javascript验证,100行超精简代码。

    这篇文章转自--寒飞,原帖地址http://blog.csdn.net/luoyehanfei/article/details/42262249 QQ交流群235032949 纯javascript验 ...

  10. Asp.net自定义控件开发任我行(4)-ViewState保存控件状态

    摘要 上一篇我们实现了下拉框的效果,此章的目的主要是保存控件属性状态 内容 我们先来看一个例子,后台代码不变,我们只改UI页面的代码,先在页面上拖放两个控件,一个是我们现在要开发的这个控件,另一个是按 ...