Start a new Kumite
AllAgda (Beta)BF (Beta)CCFML (Beta)ClojureCOBOL (Beta)CoffeeScriptCommonLisp (Beta)CoqC++CrystalC#D (Beta)DartElixirElm (Beta)Erlang (Beta)Factor (Beta)Forth (Beta)Fortran (Beta)F#GoGroovyHaskellHaxe (Beta)Idris (Beta)JavaJavaScriptJulia (Beta)Kotlinλ Calculus (Beta)LeanLuaNASMNim (Beta)Objective-C (Beta)OCaml (Beta)Pascal (Beta)Perl (Beta)PHPPowerShell (Beta)Prolog (Beta)PureScript (Beta)PythonR (Beta)RacketRaku (Beta)Reason (Beta)RISC-V (Beta)RubyRustScalaShellSolidity (Beta)SQLSwiftTypeScriptVB (Beta)
Show only mine

Kumite (ko͞omiˌtā) is the practice of taking techniques learned from Kata and applying them through the act of freestyle sparring.

You can create a new kumite by providing some initial code and optionally some test cases. From there other warriors can spar with you, by enhancing, refactoring and translating your code. There is no limit to how many warriors you can spar with.

A great use for kumite is to begin an idea for a kata as one. You can collaborate with other code warriors until you have it right, then you can convert it to a kata.

Ad
Ad
Fundamentals
Code
Diff
  • import __future__
    import _weakrefset
    import grp
    import reprlib
    import _abc
    import _xxsubinterpreters
    import gzip
    import requests
    import _ast
    import _xxtestfuzz
    import hashlib
    import resource
    import _asyncio
    import abc
    import heapq
    # import retrying
    import _bisect
    import aifc
    import hmac
    import rlcompleter
    import _blake2
    import antigravity
    import html
    import runpy
    #import appdirs
    #import html5lib
    import sched
    import _bz2
    import argparse
    import http
    import secrets
    import _codecs
    import array
    import idna
    import select
    import _codecs_cn
    import ast
    import imaplib
    import selectors
    import _codecs_hk
    import asynchat
    import imghdr
    import setuptools
    import _codecs_iso2022
    import asyncio
    import imp
    import shelve
    import _codecs_jp
    import asyncore
    import importlib
    import shlex
    import _codecs_kr
    import atexit
    import inspect
    import shutil
    import _codecs_tw
    import audioop
    import io
    import signal
    import _collections
    import base64
    import ipaddress
    import site
    import _collections_abc
    import bdb
    import itertools
    import six
    import _compat_pickle
    import binascii
    import json
    import smtpd
    import _compression
    import binhex
    import keyword
    import smtplib
    import _contextvars
    import bisect
    import lib2to3
    import sndhdr
    import _crypt
    import builtins
    import linecache
    import socket
    import _csv
    import bz2
    import locale
    import socketserver
    import _ctypes
    import cProfile
    #import lockfile
    import spwd
    import _ctypes_test
    #import cachecontrol
    import logging
    import sqlite3
    import _curses
    import calendar
    import lzma
    import sre_compile
    import _curses_panel
    import certifi
    import mailbox
    import sre_constants
    import _datetime
    import cgi
    import mailcap
    import sre_parse
    import _dbm
    import cgitb
    #import main
    import ssl
    import _decimal
    #import chardet
    import marshal
    import stat
    #import _dummy_thread
    import chunk
    import math
    import statistics
    import _elementtree
    import cmath
    import mimetypes
    import string
    import _functools
    import cmd
    import mmap
    import stringprep
    import _gdbm
    import code
    import modulefinder
    import struct
    import _hashlib
    import codecs
    #import msgpack
    import subprocess
    import _heapq
    import codeop
    import multiprocessing
    import sunau
    import _imp
    import collections
    import netrc
    #import symbol
    import _io
    #import colorama
    import nntplib
    import symtable
    import _json
    import colorsys
    import ntpath
    import sys
    import _locale
    import compileall
    import nturl2path
    import sysconfig
    import _lsprof
    import concurrent
    import numbers
    import syslog
    import _lzma
    import configparser
    import numpy
    import tabnanny
    import _markupbase
    import contextlib
    import opcode
    import tarfile
    import _md5
    #import contextlib2
    import operator
    import telnetlib
    import _multibytecodec
    import contextvars
    import optparse
    import tempfile
    import _multiprocessing
    import copy
    #import ordered_set
    import termios
    import _opcode
    import copyreg
    import os
    import textwrap
    import _operator
    import crypt
    import ossaudiodev
    #import this
    import _osx_support
    import csv
    import packaging
    import threading
    import _pickle
    import ctypes
    import pandas
    import time
    import _posixshmem
    import curses
    #import parser
    import timeit
    import _posixsubprocess
    import dataclasses
    import pathlib
    import token
    import _py_abc
    import datetime
    import pdb
    import tokenize
    import _pydecimal
    import dateutil
    #import pep517
    #import toml
    import _pyio
    import dbm
    import pickle
    import trace
    import _queue
    import decimal
    import pickletools
    import traceback
    import _random
    import difflib
    import pip
    import tracemalloc
    import _sha1
    import dis
    import pipes
    import tty
    import _sha256
    #import distlib
    import pkg_resources
    import turtle
    import _sha3
    #import distro
    import pkgutil
    import turtledemo
    import _sha512
    import platform
    import types
    import _signal
    import doctest
    import plistlib
    import typing
    import _sitebuiltins
    #import dummy_threading
    import poplib
    import unicodedata
    import _socket
    import posix
    import unittest
    import _sqlite3
    import email
    import posixpath
    import urllib
    import _sre
    import encodings
    import pprint
    import urllib3
    import _ssl
    import ensurepip
    import profile
    import uu
    import _stat
    import enum
    #import progress
    import uuid
    import _statistics
    import errno
    import pstats
    import venv
    import _string
    import faulthandler
    import pty
    import warnings
    import _strptime
    import fcntl
    import pwd
    import wave
    import _struct
    import filecmp
    import py_compile
    import weakref
    import _symtable
    import fileinput
    import pyclbr
    import webbrowser
    import fnmatch
    import pydoc
    #import webencodings
    import _testbuffer
    #import formatter
    import pydoc_data
    import wsgiref
    import _testcapi
    import fractions
    import pyexpat
    import xdrlib
    import _testimportmultiple
    import ftplib
    import pyparsing
    import xml
    import _testinternalcapi
    import functools
    #import pytoml
    import xmlrpc
    import _testmultiphase
    import gc
    import pytz
    import xxlimited
    import _thread
    import genericpath
    import queue
    import xxsubtype
    import _threading_local
    import getopt
    import quopri
    import zipapp
    import _tracemalloc
    import getpass
    import random
    import zipfile
    import _warnings
    import gettext
    import re
    import zipimport
    import _weakref
    import glob
    import readline
    import zlib
    • import __future__
    • import _weakrefset
    • import grp
    • import reprlib
    • import _abc
    • import _xxsubinterpreters
    • import gzip
    • import requests
    • import _ast
    • import _xxtestfuzz
    • import hashlib
    • import resource
    • import _asyncio
    • import abc
    • import heapq
    • # import retrying
    • import _bisect
    • import aifc
    • import hmac
    • import rlcompleter
    • import _blake2
    • import antigravity
    • import html
    • import runpy
    • #import appdirs
    • #import html5lib
    • import sched
    • import _bz2
    • import argparse
    • import http
    • import secrets
    • import _codecs
    • import array
    • import idna
    • import select
    • import _codecs_cn
    • import ast
    • import imaplib
    • import selectors
    • import _codecs_hk
    • import asynchat
    • import imghdr
    • import setuptools
    • import _codecs_iso2022
    • import asyncio
    • import imp
    • import shelve
    • import _codecs_jp
    • import asyncore
    • import importlib
    • import shlex
    • import _codecs_kr
    • import atexit
    • import inspect
    • import shutil
    • import _codecs_tw
    • import audioop
    • import io
    • import signal
    • import _collections
    • import base64
    • import ipaddress
    • import site
    • import _collections_abc
    • import bdb
    • import itertools
    • import six
    • import _compat_pickle
    • import binascii
    • import json
    • import smtpd
    • import _compression
    • import binhex
    • import keyword
    • import smtplib
    • import _contextvars
    • import bisect
    • import lib2to3
    • import sndhdr
    • import _crypt
    • import builtins
    • import linecache
    • import socket
    • import _csv
    • import bz2
    • import locale
    • import socketserver
    • import _ctypes
    • import cProfile
    • #import lockfile
    • import spwd
    • import _ctypes_test
    • #import cachecontrol
    • import logging
    • import sqlite3
    • import _curses
    • import calendar
    • import lzma
    • import sre_compile
    • import _curses_panel
    • import certifi
    • import mailbox
    • import sre_constants
    • import _datetime
    • import cgi
    • import mailcap
    • import sre_parse
    • import _dbm
    • import cgitb
    • #import main
    • import ssl
    • import _decimal
    • #import chardet
    • import marshal
    • import stat
    • #import _dummy_thread
    • import chunk
    • import math
    • import statistics
    • import _elementtree
    • import cmath
    • import mimetypes
    • import string
    • import _functools
    • import cmd
    • import mmap
    • import stringprep
    • import _gdbm
    • import code
    • import modulefinder
    • import struct
    • import _hashlib
    • import codecs
    • #import msgpack
    • import subprocess
    • import _heapq
    • import codeop
    • import multiprocessing
    • import sunau
    • import _imp
    • import collections
    • import netrc
    • #import symbol
    • import _io
    • #import colorama
    • import nntplib
    • import symtable
    • import _json
    • import colorsys
    • import ntpath
    • import sys
    • import _locale
    • import compileall
    • import nturl2path
    • import sysconfig
    • import _lsprof
    • import concurrent
    • import numbers
    • import syslog
    • import _lzma
    • import configparser
    • import numpy
    • import tabnanny
    • import _markupbase
    • import contextlib
    • import opcode
    • import tarfile
    • import _md5
    • #import contextlib2
    • import operator
    • import telnetlib
    • import _multibytecodec
    • import contextvars
    • import optparse
    • import tempfile
    • import _multiprocessing
    • import copy
    • #import ordered_set
    • import termios
    • import _opcode
    • import copyreg
    • import os
    • import textwrap
    • import _operator
    • import crypt
    • import ossaudiodev
    • import this
    • #import this
    • import _osx_support
    • import csv
    • import packaging
    • import threading
    • import _pickle
    • import ctypes
    • import pandas
    • import time
    • import _posixshmem
    • import curses
    • #import parser
    • import timeit
    • import _posixsubprocess
    • import dataclasses
    • import pathlib
    • import token
    • import _py_abc
    • import datetime
    • import pdb
    • import tokenize
    • import _pydecimal
    • import dateutil
    • #import pep517
    • #import toml
    • import _pyio
    • import dbm
    • import pickle
    • import trace
    • import _queue
    • import decimal
    • import pickletools
    • import traceback
    • import _random
    • import difflib
    • import pip
    • import tracemalloc
    • import _sha1
    • import dis
    • import pipes
    • import tty
    • import _sha256
    • #import distlib
    • import pkg_resources
    • import turtle
    • import _sha3
    • #import distro
    • import pkgutil
    • import turtledemo
    • import _sha512
    • import platform
    • import types
    • import _signal
    • import doctest
    • import plistlib
    • import typing
    • import _sitebuiltins
    • #import dummy_threading
    • import poplib
    • import unicodedata
    • import _socket
    • import posix
    • import unittest
    • import _sqlite3
    • import email
    • import posixpath
    • import urllib
    • import _sre
    • import encodings
    • import pprint
    • import urllib3
    • import _ssl
    • import ensurepip
    • import profile
    • import uu
    • import _stat
    • import enum
    • #import progress
    • import uuid
    • import _statistics
    • import errno
    • import pstats
    • import venv
    • import _string
    • import faulthandler
    • import pty
    • import warnings
    • import _strptime
    • import fcntl
    • import pwd
    • import wave
    • import _struct
    • import filecmp
    • import py_compile
    • import weakref
    • import _symtable
    • import fileinput
    • import pyclbr
    • import webbrowser
    • import fnmatch
    • import pydoc
    • #import webencodings
    • import _testbuffer
    • #import formatter
    • import pydoc_data
    • import wsgiref
    • import _testcapi
    • import fractions
    • import pyexpat
    • import xdrlib
    • import _testimportmultiple
    • import ftplib
    • import pyparsing
    • import xml
    • import _testinternalcapi
    • import functools
    • #import pytoml
    • import xmlrpc
    • import _testmultiphase
    • import gc
    • import pytz
    • import xxlimited
    • import _thread
    • import genericpath
    • import queue
    • import xxsubtype
    • import _threading_local
    • import getopt
    • import quopri
    • import zipapp
    • import _tracemalloc
    • import getpass
    • import random
    • import zipfile
    • import _warnings
    • import gettext
    • import re
    • import zipimport
    • import _weakref
    • import glob
    • import readline
    • import zlib
Code
Diff
  • print                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           ("hello")
    • print ("hello")
    • print ("hello")
Fundamentals
Logic
Code
Diff
  • using System;
    using System.Diagnostics;
    using System.Numerics;
    using System.Linq;
    
    public class Math
    {
        public static T Max<T>(params T[] nums) where T : struct, IComparable<T>
        {
            if (nums.Length == 0)
                throw new InvalidOperationException("No nums were provided to find the maximum value.");
          
            T max;
            Span<T> items = nums;
            if (items.Length / Vector<T>.Count > 1)
            {
                // We have at least two vectors
                var maxVector = new Vector<T>(items); // first vector
                items = items[Vector<T>.Count..]; // skip first vector
                while (items.Length >= Vector<T>.Count)
                {
                    var nextVector = new Vector<T>(items);  // next vector
                    items = items[Vector<T>.Count..]; // skip next vector
                    maxVector = Vector.Max(maxVector, nextVector); // evaluate maxVector
                }
              
                // Evaluate Max for maxVector
                max = maxVector[0];
                for (var i = 1; i < Vector<T>.Count; ++i)
                    if (maxVector[i] is var item && item.CompareTo(max) > 0)
                        max = item;
            }
            else
            {
                max = items[0]; // max is first item
                items = items[1..]; // skip first item
            }
    
            // Evaluate Max for items in span
            for (var i = 0; i < items.Length; ++i)
                if (items[i] is var item && item.CompareTo(max) > 0)
                    max = item;
          
            Debug.Assert(max.CompareTo(nums.Max()) == 0);
            return max;
        }
    }  
    • using System;
    • using System.Diagnostics;
    • using System.Numerics;
    • using System.Linq;
    • public class Math
    • {
    • public static int Max(params int[] nums)
    • public static T Max<T>(params T[] nums) where T : struct, IComparable<T>
    • {
    • var blockSize = Vector<int>.Count;
    • var blockCount = nums.Length / blockSize;
    • var vectorMax = Vector<int>.Zero;
    • for (var block = 0; block < blockCount; block++)
    • if (nums.Length == 0)
    • throw new InvalidOperationException("No nums were provided to find the maximum value.");
    • T max;
    • Span<T> items = nums;
    • if (items.Length / Vector<T>.Count > 1)
    • {
    • var blockIndex = block * blockSize;
    • var blockVector = new Vector<int>(nums, blockIndex);
    • vectorMax = Vector.Max(vectorMax, blockVector);
    • // We have at least two vectors
    • var maxVector = new Vector<T>(items); // first vector
    • items = items[Vector<T>.Count..]; // skip first vector
    • while (items.Length >= Vector<T>.Count)
    • {
    • var nextVector = new Vector<T>(items); // next vector
    • items = items[Vector<T>.Count..]; // skip next vector
    • maxVector = Vector.Max(maxVector, nextVector); // evaluate maxVector
    • }
    • // Evaluate Max for maxVector
    • max = maxVector[0];
    • for (var i = 1; i < Vector<T>.Count; ++i)
    • if (maxVector[i] is var item && item.CompareTo(max) > 0)
    • max = item;
    • }
    • var max = MaxWithinVector(vectorMax);
    • var leftover = nums.Length % blockSize;
    • for (var i = nums.Length - leftover; i < nums.Length; i++)
    • {
    • max = System.Math.Max(nums[i], max);
    • }
    • Debug.Assert(max == nums.Max());
    • return max;
    • }
    • public static int MaxWithinVector(Vector<int> vector)
    • {
    • var max = vector[0];
    • for (var i = 1; i < Vector<int>.Count; i++)
    • else
    • {
    • max = System.Math.Max(vector[i], max);
    • max = items[0]; // max is first item
    • items = items[1..]; // skip first item
    • }
    • // Evaluate Max for items in span
    • for (var i = 0; i < items.Length; ++i)
    • if (items[i] is var item && item.CompareTo(max) > 0)
    • max = item;
    • Debug.Assert(max.CompareTo(nums.Max()) == 0);
    • return max;
    • }
    • }
Code
Diff
  • RandomBool=lambda:id(object())&1==0
    • RandomBool=lambda:id(object())%2==0
    • RandomBool=lambda:id(object())&1==0

making it verbose and using camel case.

Code
Diff
  • public class Program
    {
        public static int returnInputNumber(int num)
        {
          return num;
        }
    }
    • public class Program
    • {
    • public static int GetValue(int i)
    • public static int returnInputNumber(int num)
    • {
    • return i;
    • return num;
    • }
    • }
Code
Diff
  • public static class Kata 
    {
      public static int SameCase(char a, char b) => 
        (!char.IsLetter(a) || !char.IsLetter(b)) ? -1 :
        (char.IsLower(a) == char.IsLower(b)) ? 1 : 0;
    }
    • public static class Kata
    • {
    • public static int SameCase(char a, char b) => !(char.IsLetter(a) && char.IsLetter(b)) ? -1 : ((a&' ') == (b&' ')) ? 1 : 0;
    • public static int SameCase(char a, char b) =>
    • (!char.IsLetter(a) || !char.IsLetter(b)) ? -1 :
    • (char.IsLower(a) == char.IsLower(b)) ? 1 : 0;
    • }
Code
Diff
  • #include <functional>
    #include <string>
    using namespace std;
    string calculator(int op, int x, int y) {
      static array<std::function<int(int, int)>, 5> ops{
        plus<int>(),
        minus<int>(),
        multiplies<int>(),
        divides<int>(),
        modulus<int>(),
      };
      if (op < 1 || op > 5 || (!y && (op == 4 || op == 5))) return "Invalid Input!";
      return std::to_string(ops[op-1](x, y));
    }
    • #include <functional>
    • #include <string>
    • std::string calculator(int op, int x, int y) {
    • static std::array<std::function<int(int, int)>, 5> ops{
    • std::plus<int>(),
    • std::minus<int>(),
    • std::multiplies<int>(),
    • std::divides<int>(),
    • std::modulus<int>(),
    • using namespace std;
    • string calculator(int op, int x, int y) {
    • static array<std::function<int(int, int)>, 5> ops{
    • plus<int>(),
    • minus<int>(),
    • multiplies<int>(),
    • divides<int>(),
    • modulus<int>(),
    • };
    • if (op < 1 || op > 5 || (!y && (op == 4 || op == 5))) return "Invalid Input!";
    • return std::to_string(ops[op-1](x, y));
    • }