Problem 2595. Polite numbers. Politeness.
A polite number is an integer that sums of two or more consecutive positive integers. Politeness of a positive integer is a number of nontrivial ways to write n as a sum of two or more consecutive positive integers.
For example 9 = 4+5 = 2+3+4 and politeness of 9 is 2.
Given N return politeness of N.
See also 2593
Solution Stats
Problem Comments
-
5 Comments
An interesting problem, enough so that I chose to solve it in three essentially different ways. As always, there are various ways to solve any problem. The first two ways were essentially constructive, so counting the set of solutions for any N. The last used a formulaic approach.
Politeness is an integer sequence defined at https://oeis.org/A069283.
@Dyuman Joshi: I do not know why that error occurs. I do know that it essentially means that the user needs to wait and re-submit their solution at a later time, sometimes the next day.
By the way, it's best to not post solutions (or solution attempts) in comments. Questions or comments specific to a solution can be posted in a comment tied to said solution or solution attempt.
Solution Comments
Show commentsGroup

Indexing I
- 27 Problems
- 237 Finishers
- Piecewise linear interpolation
- Longest run of consecutive numbers
- Construct an index vector from two input vectors in vectorized fashion
- Getting the indices from a matrix
- First non-zero element in each column
- Return unique values without sorting
- Return a list sorted by number of consecutive occurrences
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Check if number exists in vector
- Replicate elements in vectors
- We love vectorized solutions. Problem 1 : remove the row average.
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Create logical matrix with a specific row and column sums
- Return a list sorted by number of consecutive occurrences
- Replicate elements in vectors
- Get the elements of diagonal and antidiagonal for any m-by-n matrix
- Getting the indices from a matrix
- Check if number exists in vector
- Fill a zeros matrix
- Set the array elements whose value is 13 to 0
- Construct an index vector from two input vectors in vectorized fashion
- Joining Ranges
- Remove the two elements next to NaN value
- Reindex a vector
- Longest run of consecutive numbers
- Put two time series onto the same time basis
- Getting logical indexes
- Matrix indexing with two vectors of indices
- middleAsColumn: Return all but first and last element as a column vector
- Return elements unique to either input
- "Low : High - Low : High - Turn around " -- Create a subindices vector
- Return unique values without sorting
- Find the largest value in the 3D matrix
- Specific Element Count
- First non-zero element in each column
Problem Recent Solvers175
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!