优化读入方法
1.导入关键包
import(
"bufio"
. "fmt" // "fmt"
"io"
"os"
)
使用io.Reader
和io.Writer
进行输入输出流操作。
2.定义运行函数
定义run(_r io.Reader, _w io.Writer)
函数
3.创建输入输出流
in := bufio.NewReader(_r)
out := bufio.NewWriter(_w)
defer out.Flush()
4.输入输出函数
Scan(...)
等价Fscan(in, ...)
Println(...)
等价Fprintln(out, ...)
5.连接控制台
func main() {run(os.Stdin, os.Stdout)}
例题演示
P3156 【深基15.例1】询问学号
AC代码
package main
import (
"bufio"
. "fmt"
"io"
"os"
)
func run(_r io.Reader, _w io.Writer) {
in := bufio.NewReader(_r)
out := bufio.NewWriter(_w)
defer out.Flush()
var n, m, t int
var a [2000005]int
Fscan(in, &n, &m)
for i := 1; i <= n; i++ {
Fscan(in, &a[i])
}
for i := 0; i < m; i++ {
Fscan(in, &t)
Fprintln(out, a[t])
}
}
func main() { run(os.Stdin, os.Stdout) }