Submission #942419
Source Code Expand
package main
import (
"bufio"
"fmt"
"os"
"strconv"
"strings"
)
type bufReader struct {
r *bufio.Reader
buf []byte
i int
}
var reader = &bufReader{
bufio.NewReader(os.Stdin),
make([]byte, 0),
0,
}
func (r *bufReader) readLine() {
if r.i < len(r.buf) {
return
}
r.buf = make([]byte, 0)
r.i = 0
for {
line, isPrefix, err := r.r.ReadLine()
if err != nil {
panic(err)
}
r.buf = append(r.buf, line...)
if !isPrefix {
break
}
}
}
func (r *bufReader) next() string {
r.readLine()
from := r.i
for ; r.i < len(r.buf); r.i++ {
if r.buf[r.i] == ' ' {
break
}
}
s := string(r.buf[from:r.i])
r.i++
return s
}
func (r *bufReader) nextLine() string {
r.readLine()
s := string(r.buf[r.i:])
r.i = len(r.buf)
return s
}
var writer = bufio.NewWriter(os.Stdout)
func next() string {
return reader.next()
}
func nextInt64() int64 {
i, err := strconv.ParseInt(reader.next(), 10, 64)
if err != nil {
panic(err)
}
return i
}
func nextInt() int {
return int(nextInt64())
}
func nextLine() string {
return reader.nextLine()
}
func out(a ...interface{}) {
fmt.Fprintln(writer, a...)
}
func max64(x, y int64) int64 {
if x > y {
return x
}
return y
}
func max(x, y int) int {
return int(max64(int64(x), int64(y)))
}
func min64(x, y int64) int64 {
if x < y {
return x
}
return y
}
func min(x, y int) int {
return int(min64(int64(x), int64(y)))
}
func abs64(x int64) int64 {
if x < 0 {
return -x
}
return x
}
func abs(x int) int {
return int(abs64(int64(x)))
}
func joinInt64s(a []int64, sep string) string {
b := make([]string, len(a))
for i, v := range a {
b[i] = strconv.FormatInt(v, 10)
}
return strings.Join(b, sep)
}
func joinInts(a []int, sep string) string {
b := make([]string, len(a))
for i, v := range a {
b[i] = strconv.Itoa(v)
}
return strings.Join(b, sep)
}
func divUp64(x, y int64) int64 {
return (x + y - 1) / y
}
func divUp(x, y int) int {
return int(divUp64(int64(x), int64(y)))
}
func gcd64(x, y int64) int64 {
if x < y {
x, y = y, x
}
for y != 0 {
x, y = y, x%y
}
return x
}
func gcd(x, y int) int {
return int(gcd64(int64(x), int64(y)))
}
func lcm64(x, y int64) int64 {
return x * y / gcd64(x, y)
}
func lcm(x, y int) int {
return int(lcm64(int64(x), int64(y)))
}
func main() {
solve()
writer.Flush()
}
func solve() {
s := nextLine()
c := strings.Index(s, "C")
if c == -1 {
out("No")
return
}
f := strings.Index(s[c:], "F")
if f == -1 {
out("No")
return
}
out("Yes")
}
Submission Info
Submission Time |
|
Task |
A - CF |
User |
keijiyoshida |
Language |
Go (1.6) |
Score |
100 |
Code Size |
2701 Byte |
Status |
AC |
Exec Time |
2 ms |
Memory |
640 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
100 / 100 |
Status |
|
|
Set Name |
Test Cases |
Sample |
0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt |
All |
0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt |
Case Name |
Status |
Exec Time |
Memory |
0_000.txt |
AC |
2 ms |
640 KB |
0_001.txt |
AC |
2 ms |
640 KB |
0_002.txt |
AC |
2 ms |
640 KB |
0_003.txt |
AC |
2 ms |
640 KB |
1_004.txt |
AC |
2 ms |
640 KB |
1_005.txt |
AC |
2 ms |
640 KB |
1_006.txt |
AC |
2 ms |
640 KB |
1_007.txt |
AC |
2 ms |
640 KB |
1_008.txt |
AC |
2 ms |
640 KB |
1_009.txt |
AC |
2 ms |
640 KB |
1_010.txt |
AC |
2 ms |
640 KB |
1_011.txt |
AC |
2 ms |
640 KB |