Skip to content

mookjp/atcoder_practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AtCoder practice repository

This is my personal practice repository of AtCoder.

You can clone or copy this repository and use init.sh to generate blueprint code.

Usage of init.sh

init.sh creates a directory which includes code set to solve a problem.

./init.sh {go module name} {directory name}

e.g.

./init.sh github.com/mookjp/atcoder 160

This command creates files like below:

160
├── a
│   ├── go.mod
│   ├── main.go
│   ├── main_test.go
│   └── testfiles
│       └── 001
│           ├── stdin.txt
│           └── stdout.txt
├── b
│   ├── go.mod
│   ├── main.go
│   ├── main_test.go
│   └── testfiles
│       └── 001
│           ├── stdin.txt
│           └── stdout.txt

...

Write code on main.go

Use reader and writer as STDIN and STDOUT.

package main

import (
	"bufio"
	"fmt"
	"io"
	"os"
)

var reader io.Reader
var writer io.Writer

func init() {
	reader = os.Stdin
	writer = os.Stdout
}

func main() {
	sc := bufio.NewScanner(reader)
    // Solve problem...
	fmt.Fprint(writer, "Answer")
}

tests in this repository

Generated directories contain main_test.go.

Test function Test_main() reads files under testfiles/{testcase} directory. stdin.txt content will be loaded as STDIN on AtCoder and stdout.txt content will be handled as expected STDOUT on AtCoder in tests.

You can copy STDIN and expected STDOUT from question page e.g. C - Traveling Salesman around Lake

After you updated your stdin.txt and stdout.txt, run go test under the question directory.

About

AtCoder practice repository

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published