题单简介 CSES 训练题集,源自芬兰的 Code Submission Evaluation System,是一套专为算法竞赛爱好者和学生设计的习题集。它不仅与 Springer 出版的《Guide to Competitive Programming》书籍相辅相成,更是一个提升算法和数据结构技能的宝贵资源。

Login to join training plan

特点 题目质量高:题目设计精良,难度梯度合理,涵盖了从基础到高级的各种算法问题,非常适合用于算法学习和练习。

考察细节:题目中的数据设计巧妙,能够深度考察选手对算法细节的理解和思维严密性。

经典引用:许多题目被 USACO 官方资源网站 USACO.guide 引用,证明了其题目质量和教育价值。

全面覆盖:结合 AtCoder Educational DP Contest 中的 DP 问题,CSES 习题集全面覆盖了各种经典的动态规划题目,为学习者提供了丰富的练习素材。

权威认证:William Lin 曾在 12 小时内成功解决其中的 150 个问题,这一成就不仅证明了他的实力,也彰显了 CSES 习题集的高质量。

Section 1. 基础数据类型

Open

Problem Tried AC Difficulty
3073   Weird Algorithm 0 0 (None)
3074   Repetitions 0 0 (None)
3075   Permutations 0 0 (None)
3076   Number Spiral 0 0 (None)
3077   Two Knights 0 0 (None)
3078   Towers 0 0 (None)
3079   Stick Lengths 0 0 (None)
3080   Counting Permutations 0 0 (None)
3081   Sliding Window Median 0 0 (None)
3082   Sliding Window Cost 0 0 (None)
3083   Grid Paths II 0 0 (None)
3084   Binomial Coefficients 0 0 (None)
3085   Empty String 0 0 (None)
3086   Common Divisors 0 0 (None)
3087   Sum of Divisors 0 0 (None)
3088   Missing Number 0 0 (None)
3089   Apartments 0 0 (None)
3090   Array Division 0 0 (None)
3091   Writing Numbers 0 0 (None)
3092   Shortest Subsequence 0 0 (None)
3093   Ferris Wheel 0 0 (None)
3094   Concert Tickets 0 0 (None)
3095   Two Sets 0 0 (None)
3096   Two Sets II 0 0 (None)
3097   Increasing Array 0 0 (None)
3098   Exponentiation 0 0 (None)
3099   Throwing Dice 0 0 (None)
3100   Removal Game 0 0 (None)
3101   Nim Game II 0 0 (None)
3102   Stair Game 0 0 (None)
3103   Minimal Rotation 0 0 (None)
3104   Longest Palindrome 0 0 (None)
3105   Required Substring 0 0 (None)
3106   String Transform 0 0 (None)
3107   Tree Matching 0 0 (None)
3108   Tree Diameter 0 0 (None)
3109   Tree Distances I 0 0 (None)
3110   Tree Distances II 0 0 (None)
3111   Prüfer Code 0 0 (None)
3112   Distance Queries 0 0 (None)
3113   Counting Paths 0 0 (None)
3114   Subtree Queries 0 0 (None)
3115   Path Queries 0 0 (None)
3116   Distinct Colors 0 0 (None)
3117   Projects 0 0 (None)
3118   Playlist 0 0 (None)
3119   Advertisement 0 0 (None)
3120   Hotel Queries 0 0 (None)
3121   Salary Queries 0 0 (None)
3122   Increasing Subsequence 0 0 (None)
3123   Counting Bits 0 0 (None)
3124   Maximum Building I 0 0 (None)
3125   Maximum Building II 0 0 (None)
3126   Distinct Subsequences 0 0 (None)
3127   Mex Grid Queries 0 0 (None)
3128   Book Shop 0 0 (None)
3129   Book Shop II 0 0 (None)
3130   Planets Queries II 0 0 (None)
3131   Stick Divisions 0 0 (None)
3132   Sorting Methods 0 0 (None)
3133   Traffic Lights 0 0 (None)
3134   Room Allocation 0 0 (None)
3135   Bit Inversions 0 0 (None)
3136   Food Division 0 0 (None)
3137   Subarray Sum Queries 0 0 (None)
3138   Cyclic Array 0 0 (None)
3139   Counting Rooms 0 0 (None)
3140   Labyrinth 0 0 (None)
3141   Monsters 0 0 (None)
3142   Flight Discount 0 0 (None)
3143   Flight Routes 0 0 (None)
3144   Cycle Finding 0 0 (None)
3145   Investigation 0 0 (None)
3146   Visiting Cities 0 0 (None)
3147   Bit Strings 0 0 (None)
3148   Trailing Zeros 0 0 (None)
3149   Restaurant Customers 0 0 (None)
3150   Factory Machines 0 0 (None)
3151   Distinct Numbers 0 0 (None)
3152   Creating Strings 0 0 (None)
3153   Apple Division 0 0 (None)
3154   Chessboard and Queens 0 0 (None)
3155   Grid Path Description 0 0 (None)
3156   Meet in the Middle 0 0 (None)
3157   Movie Festival 0 0 (None)
3158   Tasks and Deadlines 0 0 (None)
3159   Reading Books 0 0 (None)
3160   Movie Festival II 0 0 (None)
3161   Dice Combinations 0 0 (None)
3162   Minimizing Coins 0 0 (None)
3163   Coin Combinations I 0 0 (None)
3164   Coin Combinations II 0 0 (None)
3165   Removing Digits 0 0 (None)
3166   Grid Paths I 0 0 (None)
3167   Edit Distance 0 0 (None)
3168   Sum of Two Values 0 0 (None)
3169   Sum of Three Values 0 0 (None)
3170   Sum of Four Values 0 0 (None)
3171   Maximum Subarray Sum 0 0 (None)
3172   Maximum Subarray Sum II 0 0 (None)
3173   Nearest Smaller Values 0 0 (None)
3174   Static Range Sum Queries 0 0 (None)
3175   Static Range Minimum Queries 0 0 (None)
3176   Dynamic Range Sum Queries 0 0 (None)
3177   Dynamic Range Minimum Queries 0 0 (None)
3178   Range Xor Queries 0 0 (None)
3179   Range Update Queries 0 0 (None)
3180   Forest Queries 0 0 (None)
3181   Elevator Rides 0 0 (None)
3182   SOS Bit Problem 0 0 (None)
3183   Maximum Xor Subarray 0 0 (None)
3184   Subarray Sums I 0 0 (None)
3185   Subarray Sums II 0 0 (None)
3186   Subarray Divisibility 0 0 (None)
3187   Movie Festival Queries 0 0 (None)
3188   Coding Company 0 0 (None)
3189   Building Roads 0 0 (None)
3190   Message Route 0 0 (None)
3191   Building Teams 0 0 (None)
3192   Round Trip 0 0 (None)
3193   Swap Game 0 0 (None)
3194   Shortest Routes I 0 0 (None)
3195   Shortest Routes II 0 0 (None)
3196   High Score 0 0 (None)
3197   Subordinates 0 0 (None)
3198   Road Reparation 0 0 (None)
3199   Road Construction 0 0 (None)
3200   Network Breakdown 0 0 (None)
3201   Round Trip II 0 0 (None)
3202   Course Schedule 0 0 (None)
3203   Longest Flight Route 0 0 (None)
3204   Game Routes 0 0 (None)
3205   Flight Routes Check 0 0 (None)
3206   Planets and Kingdoms 0 0 (None)
3207   Giant Pizza 0 0 (None)
3208   New Flight Routes 0 0 (None)
3209   Coin Collector 0 0 (None)
3210   Company Queries I 0 0 (None)
3211   Company Queries II 0 0 (None)
3212   Knight's Tour 0 0 (None)
3213   Hamiltonian Flights 0 0 (None)
3214   Mail Delivery 0 0 (None)
3215   De Bruijn Sequence 0 0 (None)
3216   Teleporters Path 0 0 (None)
3217   Download Speed 0 0 (None)
3218   Police Chase 0 0 (None)
3219   School Dance 0 0 (None)
3220   Chess Tournament 0 0 (None)
3221   Swap Round Sorting 0 0 (None)
3222   Flight Route Requests 0 0 (None)
3223   Tree Isomorphism I 0 0 (None)
3224   Tree Isomorphism II 0 0 (None)
3225   Tree Traversals 0 0 (None)
3226   Critical Cities 0 0 (None)
3227   Network Renovation 0 0 (None)
3228   Forbidden Cities 0 0 (None)
3229   School Excursion 0 0 (None)
3230   Graph Girth 0 0 (None)
3231   Coin Grid 0 0 (None)
3232   Distinct Routes 0 0 (None)
3233   Exponentiation II 0 0 (None)
3234   Counting Divisors 0 0 (None)
3235   Creating Strings II 0 0 (None)
3236   Distributing Apples 0 0 (None)
3237   Christmas Party 0 0 (None)
3238   Fibonacci Numbers 0 0 (None)
3239   Graph Paths I 0 0 (None)
3240   Graph Paths II 0 0 (None)
3241   Dice Probability 0 0 (None)
3242   Moving Robots 0 0 (None)
3243   Candy Lottery 0 0 (None)
3244   Inversion Probability 0 0 (None)
3245   Stick Game 0 0 (None)
3246   Nim Game I 0 0 (None)
3247   Word Combinations 0 0 (None)
3248   Finding Borders 0 0 (None)
3249   Finding Periods 0 0 (None)
3250   Distinct Values Queries 0 0 (None)
3251   Range Updates and Sums 0 0 (None)
3252   Polynomial Queries 0 0 (None)
3253   Range Queries and Copies 0 0 (None)
3254   Forest Queries II 0 0 (None)
3255   Intersection Points 0 0 (None)
3256   Area of Rectangles 0 0 (None)
3257   Robot Path 0 0 (None)
3258   String Reorder 0 0 (None)
3259   Rectangle Cutting 0 0 (None)
3260   Money Sums 0 0 (None)
3261   Array Description 0 0 (None)
3262   Pyramid Array 0 0 (None)
3263   Increasing Subsequence II 0 0 (None)
3264   List Removals 0 0 (None)
3265   Planets Queries I 0 0 (None)
3266   Planets Cycles 0 0 (None)
3267   Creating Offices 0 0 (None)
3268   String Matching 0 0 (None)
3269   Coin Piles 0 0 (None)
3270   Palindrome Reorder 0 0 (None)
3271   Acyclic Graph Edges 0 0 (None)
3272   Course Schedule II 0 0 (None)
3273   Bracket Sequences I 0 0 (None)
3274   Cut and Paste 0 0 (None)
3275   Substring Reversals 0 0 (None)
3276   Reversals and Sums 0 0 (None)
3277   Reversal Sorting 0 0 (None)
3278   Necessary Roads 0 0 (None)
3279   Necessary Cities 0 0 (None)
3280   Eulerian Subgraphs 0 0 (None)
3281   Finding a Centroid 0 0 (None)
3282   Fixed-Length Paths I 0 0 (None)
3283   Fixed-Length Paths II 0 0 (None)
3284   Monster Game I 0 0 (None)
3285   Monster Game II 0 0 (None)
3286   Subarray Squares 0 0 (None)
3287   Houses and Schools 0 0 (None)
3288   Knuth Division 0 0 (None)
3289   New Roads Queries 0 0 (None)
3290   Finding Patterns 0 0 (None)
3291   Counting Patterns 0 0 (None)
3292   Pattern Positions 0 0 (None)
3293   Distinct Substrings 0 0 (None)
3294   Repeating Substring 0 0 (None)
3295   String Functions 0 0 (None)
3296   Substring Order I 0 0 (None)
3297   Substring Order II 0 0 (None)
3298   Substring Distribution 0 0 (None)
3299   Apples and Bananas 0 0 (None)
3300   One Bit Positions 0 0 (None)
3301   Signal Processing 0 0 (None)
3302   Bit Substrings 0 0 (None)
3303   Parcel Delivery 0 0 (None)
3304   Task Assignment 0 0 (None)
3305   Distinct Routes II 0 0 (None)
3306   Grid Puzzle II 0 0 (None)
3307   Increasing Array II 0 0 (None)
3308   Dynamic Connectivity 0 0 (None)
3309   Path Queries II 0 0 (None)
3310   Hamming Distance 0 0 (None)
3311   Corner Subgrid Count 0 0 (None)
3312   Reachable Nodes 0 0 (None)
3313   Reachability Queries 0 0 (None)
3314   Josephus Problem I 0 0 (None)
3315   Josephus Problem II 0 0 (None)
3316   Josephus Queries 0 0 (None)
3317   Tower of Hanoi 0 0 (None)
3318   Prefix Sum Queries 0 0 (None)
3319   Nested Ranges Check 0 0 (None)
3320   Nested Ranges Count 0 0 (None)
3321   Removing Digits II 0 0 (None)
3322   Counting Bishops 0 0 (None)
3323   Strongly Connected Edges 0 0 (None)
3324   Even Outdegree Edges 0 0 (None)
3325   Coin Arrangement 0 0 (None)
3326   Counting Tilings 0 0 (None)
3327   Divisor Analysis 0 0 (None)
3328   Missing Coin Sum 0 0 (None)
3329   Missing Coin Sum Queries 0 0 (None)
3330   Prime Multiples 0 0 (None)
3331   Special Substrings 0 0 (None)
3332   Bracket Sequences II 0 0 (None)
3333   Point Location Test 0 0 (None)
3334   Line Segment Intersection 0 0 (None)
3335   Polygon Area 0 0 (None)
3336   Point in Polygon 0 0 (None)
3337   Polygon Lattice Points 0 0 (None)
3338   Minimum Euclidean Distance 0 0 (None)
3339   Convex Hull 0 0 (None)
3340   Gray Code 0 0 (None)
3341   Pizzeria Queries 0 0 (None)
3342   Grundy's Game 0 0 (None)
3343   Another Game 0 0 (None)
3344   Counting Necklaces 0 0 (None)
3345   Counting Grids 0 0 (None)
3346   Inverse Inversions 0 0 (None)
3347   Monotone Subsequences 0 0 (None)
3348   Collecting Numbers 0 0 (None)
3349   Collecting Numbers II 0 0 (None)
3350   Counting Numbers 0 0 (None)
3351   Counting Sequences 0 0 (None)
3352   Permutation Inversions 0 0 (None)
3353   Two Stacks Sorting 0 0 (None)
3354   Counting Towers 0 0 (None)
3355   List of Sums 0 0 (None)
3356   Functional Graph Distribution 0 0 (None)
3357   Increasing Array Queries 0 0 (None)
3358   Counting Coprime Pairs 0 0 (None)
3359   Grid Path Construction 0 0 (None)
3360   Xor Pyramid Peak 0 0 (None)
3361   Palindrome Queries 0 0 (None)
3362   Counting Reorders 0 0 (None)
3363   Multiplication Table 0 0 (None)
3364   Filling Trominos 0 0 (None)
3365   Stack Weights 0 0 (None)
3366   Programmers and Artists 0 0 (None)
3367   Letter Pair Move Game 0 0 (None)
3368   Distinct Values Subarrays II 0 0 (None)
3369   Grid Completion 0 0 (None)
3370   Binary Subsequences 0 0 (None)
3371   Digit Queries 0 0 (None)
3372   Grid Puzzle I 0 0 (None)
3373   K Subset Sums I 0 0 (None)
3374   K Subset Sums II 0 0 (None)
3375   Transfer Speeds Sum 0 0 (None)
3376   Hidden Integer 0 0 (None)
3377   Tree Coin Collecting I 0 0 (None)
3378   All Palindromes 0 0 (None)
3379   Hidden Permutation 0 0 (None)
3380   Inversion Sorting 0 0 (None)
3381   And Subset Count 0 0 (None)
3382   Tree Coin Collecting II 0 0 (None)
3383   Distinct Values Sum 0 0 (None)
3384   Bubble Sort Rounds I 0 0 (None)
3385   Bubble Sort Rounds II 0 0 (None)
3386   System of Linear Equations 0 0 (None)
3387   Collecting Numbers Distribution 0 0 (None)
3388   Bus Companies 0 0 (None)
3389   Replace with Difference 0 0 (None)
3390   GCD Subsets 0 0 (None)
3391   Range Interval Queries 0 0 (None)
3392   Counting LCM Arrays 0 0 (None)
3393   Beautiful Permutation II 0 0 (None)
3394   Distinct Values Splits 0 0 (None)
3395   Maximum Xor Subset 0 0 (None)
3396   K Subset Xors 0 0 (None)
3397   Square Subsets 0 0 (None)
3398   Xor Pyramid Diagonal 0 0 (None)
3399   Xor Pyramid Row 0 0 (None)
3400   Number of Subset Xors 0 0 (None)
3401   Water Containers Moves 0 0 (None)
3402   Water Containers Queries 0 0 (None)
3403   Bouncing Ball Steps 0 0 (None)
3404   Bouncing Ball Cycle 0 0 (None)
3405   Knight Moves Grid 0 0 (None)
3406   Knight Moves Queries 0 0 (None)
3407   Sliding Window Mex 0 0 (None)
3408   Sliding Window Sum 0 0 (None)
3409   Sliding Window Minimum 0 0 (None)
3410   Sliding Window Distinct Values 0 0 (None)
3411   Sliding Window Inversions 0 0 (None)
3412   Sliding Window Mode 0 0 (None)
3413   Inverse Suffix Array 0 0 (None)
3414   Subarray Sum Queries II 0 0 (None)
3415   Sliding Window Advertisement 0 0 (None)
3416   Permuted Binary Strings 0 0 (None)
3417   Tournament Graph Distribution 0 0 (None)
3418   All Subarray Xors 0 0 (None)
3419   Colored Chairs 0 0 (None)
3420   Subarray Sum Constraints 0 0 (None)
3421   Maximum Average Subarrays 0 0 (None)
3422   Subsets with Fixed Average 0 0 (None)
3423   Nearest Shops 0 0 (None)
3424   Visible Buildings Queries 0 0 (None)
3425   K-th Highest Score 0 0 (None)
3426   Nearest Campsites I 0 0 (None)
3427   Nearest Campsites II 0 0 (None)
3428   Graph Coloring 0 0 (None)
3429   Grid Coloring I 0 0 (None)
3430   Grid Coloring II 0 0 (None)
3431   Mountain Range 0 0 (None)
3432   Sum of Four Squares 0 0 (None)
3433   Distinct Values Queries II 0 0 (None)
3434   Fixed Length Walk Queries 0 0 (None)
3435   Split into Two Paths 0 0 (None)
3436   Minimal Grid Path 0 0 (None)
3437   Corner Subgrid Check 0 0 (None)
3438   Two Array Average 0 0 (None)
3439   Next Prime 0 0 (None)
3440   Permutation Order 0 0 (None)
3441   Permutation Rounds 0 0 (None)
3442   Raab Game I 0 0 (None)
3443   Raab Game II 0 0 (None)
3444   Stick Difference 0 0 (None)
3445   Minimum Cost Pairs 0 0 (None)
3446   Longest Common Subsequence 0 0 (None)
3447   Permutation Subsequence 0 0 (None)
3448   Sliding Window Or 0 0 (None)
3449   Triangle Number Sums 0 0 (None)
3450   MST Edge Check 0 0 (None)
3451   MST Edge Set Check 0 0 (None)
3452   MST Edge Cost 0 0 (None)
3453   Maximum Manhattan Distances 0 0 (None)
3454   All Manhattan Distances 0 0 (None)
3455   Filled Subgrid Count I 0 0 (None)
3456   Filled Subgrid Count II 0 0 (None)
3457   All Letter Subgrid Count I 0 0 (None)
3458   All Letter Subgrid Count II 0 0 (None)
3459   Border Subgrid Count I 0 0 (None)
3460   Border Subgrid Count II 0 0 (None)
3461   Mex Grid Construction 0 0 (None)
3462   Distinct Values Subarrays 0 0 (None)
3463   Distinct Values Subsequences 0 0 (None)
3464   Third Permutation 0 0 (None)
3465   Permutation Prime Sums 0 0 (None)
3466   Distinct Sums Grid 0 0 (None)
3467   Same Sum Subsets 0 0 (None)
3468   Sliding Window Xor 0 0 (None)
3469   Line Segments Trace I 0 0 (None)
3470   Line Segments Trace II 0 0 (None)
3471   Lines and Queries I 0 0 (None)
3472   Lines and Queries II 0 0 (None)

Section 2. 条件语句

Open

Problem Tried AC Difficulty
P93    蜗牛爬行 87 32 1
A1049   [ABC233A] 10 元邮票(10yen Stamp) 164 52 1
A1065   范围判断 197 83 1
A1062   [ABC220A] 寻找倍数(Find Multiple) 95 44 1
P98    睡眠 63 27 1
P103   练18.3 组别判断 40 23 1
A1077A   [ABC201A] 微小等差数列(Tiny Arithmetic Sequence) 86 42 1
A1081A   星座指南 219 70 1
 
Enrollees
2
Created By