CYCLOPSZ - Old Profile
Last update: 2014-12-09
My Problems (SPOJ)
Classical:
- Ancient Aliens (2013-06-01)
- Farmer Joe (2013-06-01)
- One Good Base Deserves Another (2013-06-01)
- A Kleene Implementation (2013-06-01)
- Peculiar Permutivores (2014-03-29)
- Some Sums (2014-06-07)
- Distinct Viewpoints (2014-09-27)
Tutorial:
- The Brain-Folk Computer (2013-06-01)
- Permutation Cycle Decomposition (2014-03-29)
SHORTEN Main:
- The Brain-Folk Computer (2013-07-28)
BSCPROG Cpttrn:
- Cross Pattern (Act 1) (2014-01-12)
- Cross Pattern (Act 2) (2014-01-12)
My Problems (Elsewhere)
Mathalon:
- How many zeros 2 (2011-12-27) [screenshot in case server is down]
Anarchy Golf:
- Gizoogle (2014-02-16)
- Circlify (2014-03-01)
- Anarchic Antarctic Scene (2014-03-02)
- The Fool on the Hill (2014-03-12)
- Searching for Paul McCartney (2014-03-13)
- Making Molehills out of Mountains (2014-03-13)
- Permutation Cycles (2014-03-26)
- Permutation Composition (2014-04-11)
- The Logfather (2014-05-29)
- Ant Paths (2014-07-16)
- Stars and Bars (2014-08-18)
- Enumerate Compositions (2014-11-11)
- Polyominoes (2014-12-01)
Recommended Brainf**k Problems
"I am endeavoring, ma'am, to construct a mnemonic memory circuit using stone knives and bearskins." — Spock
Some useful links:
- Wikipedia article
- Icemens' tutorial on YouTube
- Daniel B. Cristofani's suggestions for intermediate BF programmers
- Alex Pankratov's bff, the BF interpreter used on SPOJ
- Thomas Cort's BFI, the BF interpreter used on Anarchy Golf
This section is inspired by Tjandra's excellent list of brainf**k solvable problems. His list includes some problems that mine doesn't, and vice versa.
Note: where a problem code is given, hover the mouse over it to see the problem title.
Problems where only BF is allowed: (Classical: 16) BFBASE, BFCC, BFDIV, BFGCD, BFMUL, BFONP, BFPRMCYC, BFREGEX1, BFROTATE, BFTAB, BFTRI, CRYPTO2, FAST_BF, FCTRL5, MULTIPLY, SORTING (Challenge: 9) BFBIGTHN, BFMODULO, BFSTR1, BFWRITE, FAST_BF2, HS09BF, LIB, MODULUS2, TSET (Tutorial: 3) BFBINADD, MB2, QWERTY02 (Partial: 1) BGEEK (SHORTEN: 7) BFBIGTHN, BFBINADD, BF_PRIME, BF_SHORT, MAXMINBF, MB2, ODDBF (Polish SPOJ Hard: 3) AL_18_07, AVER_BF, MAXMINBR (Polish SPOJ Medium: 1) BFTRIANG (Polish SPOJ Easy: 1) OSTBR (Polish SPOJ Challenge: 2) BFEVIL, ODDBF
Problems where only BF and (Whitespace and/or Intercal) are allowed: (Classical: 5) ADITYA13, CRYPTO3, EDIT1, GALAXY, SBSTR1
Below is a list of selected problems that can be solved with BF even though they weren't designed for it. They are sorted by category, then chronologically.
Classical:
- Factorial
- Adding Reversed Numbers
- Street Parade
- To and Fro
- Ws Cipher
- Java vs C ++
- A Game with Numbers
- Revenge of the squares
- With a Pit of Death
- Run length encoding
Challenge:
- Kamil
- Plant a Christmas Tree
- Digits of Pi
- Digits of e
- Japan Crossword
- X-Words
- Size Contest
- Shortest Superstring
- Prime checker
- Digits of SQRT(2)
- Nop
- Polybius square
- Reverse the Input
- Christmas Tree
- Automatic Brainf##k Code Generator (Shortening AI)
Tutorial:
- Run Length Decoding
- University Employees
- Adding two numbers
- Look and Say
- Mirrored Pairs
- Harry and big doughnuts
- The Quine
- Arabic and English
- Plus Within a diamond
- Vowels
- Beautiful Numbers
- Fibonacci Easy
- Add
- Problems 2: DIV, MOD and IF
- Problems 3: For Fun Sequence
- Problems 5: String
SHORTEN Main:
- Plant a Christmas Tree
- Size Contest
- Fibonacci numbers
- Next permutation
- Zeros of factorial
- Positional notations
- Polybius square
- Morse code
- Reverse Polish notation
- Street parade (challenge)
- Look and say (challenge)
- Anagram (challenge)
- Printing triangle
- Adding reversed numbers (challenge)
- Reverse the Input
- Revenge of the squares
- Different sums
- Secret code
SHORTEN Printing:
SHORTEN Tutorial:
Polish SPOJ Hard:
Polish SPOJ Medium:
Polish SPOJ Easy:
- Dwie cyfry silnii
- Flamaster
- Tablice
- StringMerge
- ROL
- Zadanie próbne
- Wiatraczki
- Połowa
- Test 3
- Transponowanie macierzy
- Parzyste nieparzyste
- Tabelki liczb
- Zliczacz liter
- Pesel
- ROL (k)
- Spacje
- Tagi HTML
- Szyfr Cezara
- Samolot
- Godzina chaosu
- Odwracanie wyrazów
- Zliczanie liczb i wyrazów
- Zliczanie linii
- Zliczanie wystąpień (kody ASCII)
- Wycinanie literek
- Kabalistyczny zapis daty
- Szyfrowanie ROT13
- Harry and big doughnuts
- PTwPZ KWIX
- XV
- Enigma w wersji light
- Sekretny kod
- Enigma w wersji light po raz kolejny
- Mundial 2014
- Małe szyfrowanko
- Skalowanie
Polish SPOJ Challenge:
BSCPROG Cpttrn:
Anarchy Golf:
- delete blank lines
- even lines
- sort characters
- Fibonacci Numbers
- delete last line
- swap lines
- rotate lines
- transpose lines
- FizzBuzz
- infix to postfix
- reverse lines
- maze solving
- Quine
- Look and say
- Palindromic Quine
- rot13
- Drop first line
- stratum
- double back lines
- Count asterisks
- Carriage no return
- add_sub_brainfuck_code
- long decimal
- FibBuzz
- BuzzFib
- Reverse Bits FIXED
- A plus B problem
- pretty maze
- Next Permutation
- Rotation
- fill dots
- Fixed Rows
- Maze
- All Factors
- All Factors 2
- Bitwise Counting
- Stagger Encode FIXED
- Jump Numbers
- String Assembly
- Accumulated value
- Sum of all permutations
- Harshad numbers
- sum of divisors of n
- identity matrix
- Every third line
- Space Reversal
- Not Quine
- Widen words
- Enclose in HTML
- Inverse Quine
- yesno
- Some Pattern FIXED
- rotate counterclockwise
- eight hundred
- count up digits
- Anarchic Antarctic Scene
- Making Molehills out of Mountains
- Permutation Cycles
- Numbers Cap
- Number Sequence MEDIUM
- Stars and Bars
- squeeze FIXED
- ascii diagonal
- PATH
- What have I got in my POCKET
- Ordered text permutations
- Mail merge
- Swap The Characters
- Basic Brainfuck Code Optimization
- Enumerate Compositions
Frequently Asked Questions (Comments)
This section is experimental. :) For some reason, many of the same questions get asked over and over again in comments. Maybe this FAQ can help with that a little.
Q: plz chek my cd....solvd d problem but d site sez WRONG ANS... plzzz hlppp
A: Please use English! Aside from aesthetic concerns, this will make it easier for others to understand you. Note that many users on SPOJ are not native English speakers (and might be using tools like Google Translate).
Q: Somebody please check my code, submission ID 12345678.
A: Only you, the problem setter, and admins can see your code.
Q: Admins please check my code, submission ID 12345678.
A: The admins are too busy to get involved in such matters, and it's not their job.
Q: Problem setter please check my code, submission ID 12345678.
A: Debugging is part of the problem solving process. As you gain experience, you will naturally get better at preventing bugs and tracking them down when they occur.
It's not the problem setter's job to debug the code of all users wishing to solve their problems. Some problem setters may have time and motivation to help with many such requests, but that goes beyond their responsibility, and you should be very thankful if they choose to do so for you! (The problem setter's responsibility is to make sure that his/her published problems are written clearly, have correct and preferably strong test data, reasonable constraints, etc.)
Also consider that such a request for help is generally of little value to anybody except yourself. In some cases there may be other comments that are more useful for everyone to read, and by publishing your comment, you push those useful comments down the page or onto the next page of comments, making them less easily visible.
There is a special case when it's very reasonable to ask for the problem setter to check your submission: the case when you have reason to believe there is an error with the judging or the judge data. If you plan to make such a claim, you should of course test your reasoning and your code very thoroughly first. Errors sometimes occur in recently published problems with few or no solvers, and only rarely do they occur in problems that are older and/or have many solvers.
If the problem has been solved by many people, then there's a decent chance you'll be able to find help on the forum. Before posting on the forum, be sure to read TripleM's post Read this before posting! and Leppy's post PLEASE USE CODE TAGS.
Even for hard problems with few solvers, asking the problem setter for help should be a last resort. You might get a better response if you make clear that you went to reasonable lengths to debug your own code, e.g. maybe you wrote a slow brute force solution for smaller cases to compare against the proposed faster solution, and after checking many cases you were unable to find a case where your faster code fails.
Q: My code ran fine until "Running... (17)" and then failed. Does test file #17 contain any tricky cases?
A: You have misunderstood the way judging works. The judge does not halt on first failure, so if there are many test files then you may very well see "Running... (17)" even though your code failed on the very first one.
Q: Please give additional test cases.
A: Please don't ask for spoilers in the comments section.
Everything to understand and solve the problem should already be included in the problem statement. If you think additional cases are needed to help understand the problem, then you should rather state specifically what you think is unclear in the problem statement.
This type of question could be appropriate for the forum. See also the answer to this question regarding debugging help.
Q: I'm not seeing how to solve the problem. Please give a hint.
A: Please don't ask for spoilers in the comments section.
Sometimes vague hints can be OK, but this can be hard to discern, and the safest way is simply not to tell or ask for any hints. While you may enjoy having answers handed to you, there are other people who enjoy finding things out on their own, and what you are requesting could ruin their enjoyment. If you saw someone solving a crossword puzzle, would you look over their shoulder and shout answers and hints at them? I should hope not. Please be respectful of other users.
This type of question could be appropriate for the forum. Note that giving a good hint (one that leads you in the right direction but doesn't give too much away) can be hard for some problems. See also the answer to this question regarding debugging help.
Q: The time limit is 5s, but there are accepted solutions that take more than 5s to run. How is that possible?
A: This usually means that there are multiple test files, each with a limit of 5s, and the running time you see is actually the sum of times over all test files. More details about time limits can be found in the Memory and time constraints for solutions section of the official SPOJ tutorial for new (and not only new) users.
It could also mean that the problem setter lowered the time limit at some point and then neglected to rejudge users' submissions, but that's very rare.
Added by: | Mitch Schwartz |
Date: | 2013-05-30 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | ICK |