Contest Environment

Specification of Contestant PC

Operating System

Compilers and Interpreters

Editors

IDEs

APPENDIX

Vim Features

.vimrc

Code::Blocks Default Settings Checklist

Operating System

Ubuntu 22.04.3 LTS (Jammy Jellyfish)

Compilers and Interpreters

Language

Compiler/Interpreter

Version

Alias

C

gcc-12

12.3.0

gcc

C++

g++-12

12.3.0

g++

Java

openjdk17

17.0.x

java

Python 3

python3.10

3.10.12

python3, python3.10

python3.11

3.11.0rc1

python3.11

Editors

Editor

Version

Alias

Config

VIM - Vi IMproved

8.2

vim

Feature list, vimrc

GNU Emacs

27.1

emacs

 

GNU nano

6.2

nano

 

Sublime Text

4 (Build 4152)

subl

 

Visual Studio Code

1.82.3

code

 

gedit

41.0

gedit

 

IDEs

IDE

Version

Alias

Config

Code::Blocks

20.03

codeblocks

+codeblocks-contrib, +codeblocks-common
Default Settings

Geany

1.38

geany

 

PyCharm

2023.1, Community Edition

 

 

IntelliJ IDEA

2023.2, Community Edition

 

 

Eclipse

2023-09

 

 

APPENDIX

Vim Features

Huge version with GTK3 GUI.  Features included (+) or not (-):

+acl               +file_in_path      +mouse_urxvt       -tag_any_white

+arabic            +find_in_path      +mouse_xterm       +tcl

+autocmd           +float             +multi_byte        +termguicolors

+autochdir         +folding           +multi_lang        +terminal

-autoservername    -footer            -mzscheme          +terminfo

+balloon_eval      +fork()            +netbeans_intg     +termresponse

+balloon_eval_term +gettext           +num64             +textobjects

+browse            -hangul_input      +packages          +textprop

++builtin_terms    +iconv             +path_extra        +timers

+byte_offset       +insert_expand     +perl              +title

+channel           +ipv6              +persistent_undo   +toolbar

+cindent           +job               +popupwin          +user_commands

+clientserver      +jumplist          +postscript        +vartabs

+clipboard         +keymap            +printer           +vertsplit

+cmdline_compl     +lambda            +profile           +vim9script

+cmdline_hist      +langmap           -python            +viminfo

+cmdline_info      +libcall           +python3           +virtualedit

+comments          +linebreak         +quickfix          +visual

+conceal           +lispindent        +reltime           +visualextra

+cryptv            +listcmds          +rightleft         +vreplace

+cscope            +localmap          +ruby              +wildignore

+cursorbind        +lua               +scrollbind        +wildmenu

+cursorshape       +menu              +signs             +windows

+dialog_con_gui    +mksession         +smartindent       +writebackup

+diff              +modify_fname      +sodium            +X11

+digraphs          +mouse             +sound             -xfontset

+dnd               +mouseshape        +spell             +xim

-ebcdic            +mouse_dec         +startuptime       +xpm

+emacs_tags        +mouse_gpm         +statusline        +xsmp_interact

+eval              -mouse_jsbterm     -sun_workshop      +xterm_clipboard

+ex_extra          +mouse_netterm     +syntax            -xterm_save

+extra_search      +mouse_sgr         +tag_binary       

-farsi             -mouse_sysmouse    -tag_old_static   

.vimrc

" {{{ view/edit options
syntax on
set termguicolors                      " use full 24-bit color
set number                             " show line numbers
set autoindent                         " automatic indent
set foldmethod=syntax                  " syntax based folding
set nofoldenable                       " don't open file in folds
set cursorline                         " highlight the line under cursor
set laststatus=2                       " show status bar
set linebreak                          " don't break words
set scrolloff=5                        " let 5 lines after cursor
set showcmd                            " show commands
set wildmenu                           " display all matching files when we tab-complete
set tabstop=4                          " tab size in columns
set shiftwidth=4                       " indentation size
                                       " https://medium.com/@arisweedler/tab-settings-in-vim-1ea0863c5990
set noexpandtab                        " don't insert spaces, default
set backspace=indent,eol,start         " get backspace to work on these situations
" }}}

Code::Blocks Default Settings Checklist

The following are already done for you:

  1. Go to Settings -> Editor -> General Settings and check (✓) the following items
    1. Auto Indentation
    2. Auto brace completion
    3. Show line number
  2. Unnecessary shortcut buttons should be removed from the menu bar to make the coding space larger
  3. Go to Settings -> Compiler -> Global Settings -> Compiler Settings -> Compiler Flags and check (✓) the following items
    1. Have g++ follow the C++17 ISO [-std=c++17]
    2. Optimize even more (for speed) [-O2]
  4. Go to Settings -> Environment -> General Settings -> Terminal to launch console programs, select gnome-terminal from the drop-down list.