Блог пользователя Tameshk

Автор Tameshk, 5 лет назад, По-английски

I want to invite you to share your template code which you're using for Codeforces contests using Carbon(free and open-sourse) project. Mine (First but not Best!):

Hope you guys take care in this time of corona-related hardship!

  • Проголосовать: нравится
  • +39
  • Проголосовать: не нравится

»
5 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

here is an ugly looking Template. ;)

»
5 лет назад, # |
  Проголосовать: нравится +15 Проголосовать: не нравится

Not a macro guy so mine's prob shorter than most. The stuff at the top is just debugging template.

»
5 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Thankx for letting us know about Carbon. It's AMAZING ;)

»
5 лет назад, # |
  Проголосовать: нравится +87 Проголосовать: не нравится

Unsurprisingly, the length of the template has (from the examples so far) been inversely correlated with CF rating :^)

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

[Here is a simple one.](carbon-1)

»
5 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Here's mine :) Different sections are imported when needed (not by default).

P.S. Your project is really awesome ^_^

»
5 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Here's the JAVA code template I use:

carbon74c05b1e0890611d.png)

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Well just those common macros nothing fancy(as expected from a noob xD (carbon70d89b563183424e.png)

»
5 лет назад, # |
Rev. 3   Проголосовать: нравится +55 Проголосовать: не нравится

I don't have a proper template :) Probably, because I'm too lazy. For people with big templates: please, consider hiding them in spoilers, it would make the thread much more readable.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

 Can someone tell me how to use that clock to check execution time,its not working.

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Maybe you're not compiling with the correct preprocessor directive? Your code snippet seems to require LOCAL_RELEASE to be defined.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится
Spoiler
  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    You can call both power1 and power2 power; the difference in header will overload the function signature and the version called will just depend on whether you pass in the mod argument. Also, it probably won't matter because ll overflow is rare, but you may want to rewrite the lcm argument as (x/gcd(x,y))*y to prevent x*y from overflowing.

»
5 лет назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

here is mine, it's so simple btw carbon looks very nice, great work Tameshk

Spoiler
»
5 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится
Spoiler
»
5 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

  • »
    »
    5 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +27 Проголосовать: не нравится

    Hi. I see you are using c++17 on cf. I'd like to tell you about one funny thing. Your template has lcm function which is defined for long longs, but c++17 has it's own function with the same name, so it replaces yours with the std one. Why does it matter? Std function's return type is the same as argument type, so if you run

    cout << lcm(1000000000, 1000000000 - 1);
    

    You will see 1808348672( overflow ), because args are of type int. It's very tricky, isn't it? Here's how you can fix it:

    1. add #define lcm(x, y) lcm((ll)(x), (ll)(y)) instead of implementing your own lcm function

    2. add #define lcm randomlongstringwhichyouwillneveruseasanameorsomethinglikethat after including libraries, this way your function will be used

    p. s. talking about lcm I suggest that shahil_005 throws that weird-ass lcm function out of his template there are so many things wrong with it

    UPD: soumitri2001 you have fucked up lcm function as well(but for a different reason. Change (long) (a*b/gcd(a,b)) to (long) ((long)a*b/gcd(a,b)). The a*b part gives you overflow

»
5 лет назад, # |
Rev. 7   Проголосовать: нравится +49 Проголосовать: не нравится

I don't know how to use macro

»
5 лет назад, # |
  Проголосовать: нравится +92 Проголосовать: не нравится

Here's mine:

carbon-1

Usually, I start from scratch, or copy-paste from my last code
I don't have any macros

»
5 лет назад, # |
  Проголосовать: нравится +18 Проголосовать: не нравится

Whats the point in posting screenshots of sourcecode?

»
5 лет назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

1000 lines of code just make it stucked... UPD:Just like this code

»
5 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

»
5 лет назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

This is mine, I saw Geothermal use it in his Div. 3 unofficial editorial and thought it was good and that I wouldn't have to change it for a long period of time, and so far it's served me really well. Though I made a few edits of my own.  Pastebin link because I just can't get carbon to upload the template

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Here's mine template, ugly but fun. ;D

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
My query template
My graph template
My Hello-World template
My normal template
»
5 лет назад, # |
  Проголосовать: нравится +13 Проголосовать: не нравится

You can avoid to use macro CONFIG:

const bool ready = [](){
    std::ios_base::sync_with_stdio(false); std::cin.tie(0);
    std::cout << std::fixed << std::setprecision(12);
    return true;
}();

This lambda will be called before main. Example

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

My template

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится

C++:

Rust:

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Ok so I was preparing to post but I really didn't want to drown everybody's codes with my monster, gotta share the spotlight. See any of my submissions 78664902 to understand :p

»
5 лет назад, # |
  Проголосовать: нравится +35 Проголосовать: не нравится

Creating images instead of pasting code with CF formatting. Heavier page to load, and nobody can't copy-paste something useful from here, nice.

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    You don't learn from copy-paste! You should make your own template without taking exactly the same template from random red guys!

»
5 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Short, efficient, unique.

I use snippet shortcuts to insert algorithms and implementations when needed.

»
5 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

I don't use it during contests, because I don't have time to complete it yet, but I published mine on my blog : Input/Output.

I also have a tool that includes functions that I need at compile-time on my github : C-Tool

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Here's my submission template :)

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Short and simple, loaded and ready for multiple test-cases and focus only on the solve function.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Too much templates !!! I will have long long time to learn all of this. Thank you everyone <3

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

My UltiSnips snippet for vim

»
5 лет назад, # |
  Проголосовать: нравится -19 Проголосовать: не нравится

It failed to accommodate the whole code, so a huge part of this picture is just black.

»
5 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится

Why does every body using dark theme? :) carbon.png

»
5 лет назад, # |
  Проголосовать: нравится +18 Проголосовать: не нравится

it's mine :)

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

I want this theme for my compiler...anyone knows either online or offline compiler which contain this theme .

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    I guess you can install themes on your editor since those themes are not created by the author.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

»
4 года назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

  • »
    »
    4 года назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
    My ugly template
»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

My template is

here

Standard I think. Not using

Header

I feel like it is too slow when running on test cases...

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Here you g----->o
carbon-1

»
4 года назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Template

Small and simple

»
4 года назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

The main thing is #define int long long. WA from overflow too many times

»
4 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится
Template

Debugger that you might like, since it can be used without writing a single line of code in your final submission file.
(See sample_program in the link given above.)

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

I try to keep it as simple as possible, and not exaggerated.

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

carbon.png