【发布时间】:2015-01-21 08:58:17
【问题描述】:
我在一个竞争性的编码网站上做这个练习题。我们有一个场景,我们有一个不需要输入“www”的智能浏览器。也不是元音。这两个东西是浏览器自己输入的。
我正在编写一个程序,它显示智能网址中的字符数与完整网址的比率。 IE。例如,www.google.com 的智能 URL 将是 ggl.com。因此程序的显示将是7/14。我这样做了,但我的显示是6/14。即少一个。它适用于每个测试用例。我不知道问题出在哪里
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();// no of testcases!
while(t > 0)
{
String st = sc.next();
int count = st.length();
count = count-4;
int count1 = st.length();
for(char da:st.toCharArray())
{
switch(da)
{
case 'a':
count = count -1;
break;
case 'e':
count = count -1;
break;
case 'i':
count = count-1;
break;
case 'o':
count = count -1;//System.out.println(da);
break;
case 'u':
count = count -1;
break;
}
}
System.out.print((count ) +"/" +count1) ;
System.out.println();
t--;
}
【问题讨论】:
-
然后将
count设置为count - 3。 -
@MarounMaroun 这适用于
.com网址,但不适用于.edu网址。 -
如果
count的减量是在元音的情况下唯一要做的事情,则可以将多个 case 语句放在另一个之后。所以将摆脱你的案例陈述中的复制粘贴代码。 -
@Eran 和更烦人的 '.co.uk'
-
@dwana 我没有考虑到这一点。我想 OP 应该更精确地确定哪些元音应该删除,哪些元音应该保留。
标签: java