第一行输入一个长度
,由大小写字母、数字和空格构成的字符串
。保证首尾不为空格。
第二行输入一个字符
,保证
为大小写字母或数字。
在一行上输出一个整数,代表统计结果。
HELLONowcoder123 o
3
由于
为小写字母,因此统计其大小写形态出现的次数和,即
。
H E L L O Nowcoder123 1
1
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
reader := bufio.NewReader(os.Stdin)
s, _ := reader.ReadString('\n')
s = strings.TrimSpace(s) // 去掉字符串末尾的换行符
fmt.Println(Stats(s))
}
func Stats(s string) int {
if strings.Contains(s, " ") {
words := strings.Split(s, " ")
lastWord := words[len(words)-1]
return len(lastWord)
} else {
// 如果字符串中没有空格,那么整个字符串就是一个单词
return len(s)
}
}
作者:阿塔利亚
链接:https://www.nowcoder.com/discuss/601937124866174976
来源:牛客网 package main
import (
"fmt"
"strings"
"bufio"
"os"
)
func main() {
var str, ru string
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
str = scanner.Text()
scanner.Scan()
ru = scanner.Text()
str = strings.ToLower(str)
ru = strings.ToLower(ru)
n := 0
for _, v := range str{
if string(v) == ru{
n++
}
}
fmt.Println(n)
} 关键在于scan()每次只能读一行。
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
reader := bufio.NewReader(os.Stdin)
char, _ := reader.ReadString('\n')
char = strings.Replace(char, "\n", "", -1)
char = strings.ToUpper(char)
target, _ := reader.ReadString('\n')
target = strings.Replace(target, "\n", "", -1)
target = strings.ToUpper(target)
fmt.Println(strings.Count(char, target))
} package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
input:=bufio.NewScanner(os.Stdin)
input.Scan()
strA:=input.Text()
input.Scan()
strB:=input.Text()
strA=strings.ToLower(strA)
strB=strings.ToLower(strB)
parts:=strings.Split(strA, strB)
fmt.Printf("%d",len(parts)-1)
}
package main
import "strings"
import "fmt"
func count(s, target string) (n int) {
s = strings.ToLower(s)
target = strings.ToLower(target)
var count int
for _, v := range s {
if target == string(v) {
count++
}
}
return count
}
func main(){
s:="ABCA"
t:="a"
n:=count(s,t)
fmt.Println(n)
} package main
import (
"bufio"
"os"
"strings"
"fmt"
)
func main(){
reader:= bufio.NewReader(os.Stdin)
text,_,_:=reader.ReadLine()
char,_,_:=reader.ReadLine()
var str string=strings.ToUpper(string(text))
var ch string=strings.ToUpper(string(char))
fmt.Println(strings.Count(str,ch))
} package main
import (
"strings"
"fmt"
"bufio"
"os"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
str := scanner.Text()
scanner.Scan()
targetChar := scanner.Text()
array := strings.Split(str, "")
count := 0
for _, char := range array {
if strings.ToLower(char) == strings.ToLower(targetChar) {
count ++
}
}
fmt.Println(count)
} package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
// 读取输入
reader := bufio.NewReader(os.Stdin)
str,_ := reader.ReadString('\n')
// 去掉末尾"\n"
//str = strings.Trim(str,"\n")
str = strings.Replace(str,"\n"," ", -1)
//fmt.Println("str:" + str)
// 读取输入
var str2 string
fmt.Scanln(&str2)
str2 = strings.Replace(str2,"\n"," ", -1)
//fmt.Println("str2:" + str2)
// 统计字符出现次数
var num int = 0
for _,v := range str {
//fmt.Println(reflect.TypeOf(v))
if string(v) == str2 || strings.ToLower(string(v)) == str2 {
num ++
}
}
fmt.Println(num)
}
# 为何IDE可以通过,但牛客网上咋通不过测试呢
import java.util.*; import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner s=new Scanner(System.in); String all=""; String one=""; char[] ac; char temp; int num=0; while(s.hasNext()) { //s.toUpperCase(),String 转化为大写 //s.toLowerCase(),String 转化为小写 //String字符转换,s.toCharArray()与s.charAt(index) //char字符转换,String.valueOf(c)转化为String all=s.nextLine(); one=s.nextLine(); //存放原来所有的 ac=all.toCharArray(); //存放要的字符 //temp=one.charAt(0); for(int i=0;i<ac.length;i++) { if(one.equalsIgnoreCase(String.valueOf(ac[i]))) num++; } System.out.println(num); } } }