问题 1461: [蓝桥杯][基础练习VIP]FJ的字符串 规律很容易看出来,就是把上一次的字符串重复两次,中间加上一个ASCII码不断+1的字符 1 121 1213121 121312141213121
import java. util. Scanner;
public class Main {
public static void main ( String[ ] args) {
Scanner sc = new Scanner ( System. in) ;
int n = sc. nextInt ( ) ;
String s = "" ;
for ( int i = 65 ; i - 65 < n; i++ ) {
char c = ( char ) i;
s = s + c + s;
}
System. out. println ( s) ;
}
}
问题 1463: [蓝桥杯][基础练习VIP]Sine之舞 这个讲的很好 点这里 ,本来想写一个递归形式的,但是sn的拼装会用到an,递归反而重复计算了
package 蓝桥;
import java. util. Scanner;
public class Main {
public static void main ( String[ ] args) {
Scanner scanner = new Scanner ( System. in) ;
int n = scanner. nextInt ( ) ;
scanner. close ( ) ;
String[ ] an = new String [ n] ;
for ( int i = 0 ; i < n; i++ ) {
if ( i == 0 ) {
an[ i] = "sin(1" ;
} else {
if ( i % 2 == 1 ) {
an[ i] = an[ i- 1 ] + "-sin(" + ( i+ 1 ) ;
} else {
an[ i] = an[ i- 1 ] + "+sin(" + ( i+ 1 ) ;
}
}
}
for ( int i = 0 ; i < n; i++ ) {
for ( int j = 0 ; j <= i; j++ ) {
an[ i] = an[ i] + ")" ;
}
}
int count = n;
StringBuffer sn = new StringBuffer ( ) ;
for ( int i = 0 ; i < n- 1 ; i++ ) {
sn. append ( "(" ) ;
}
for ( int i = 0 ; i < n; i++ ) {
if ( i == n- 1 ) {
sn. append ( an[ i] + "+1" ) ;
} else {
sn. append ( an[ i] + "+" + count+ ")" ) ;
}
count-- ;
}
System. out. println ( sn) ;
}
}
问题 1466: [蓝桥杯][基础练习VIP]字符串对比 考察对String的方法的熟悉 1.长度 String.lenth() 2.完全相同 String.equals(String anotherString) 3.不区分大小写相同 String.equalsIgnoreCase(String anotherString) 4.符合1不符合23的 注意读入数据时使用next(),我使用nextLine()错误数据20%,应该是他的两行数据之间有空格或空行,前者会跳过,后者不会。
import java. util. Scanner;
public class Main {
public static void main ( String[ ] args) {
Scanner sc = new Scanner ( System. in) ;
String s1= sc. next ( ) ;
String s2= sc. next ( ) ;
if ( s1. length ( ) != s2. length ( ) ) {
System. out. println ( 1 ) ;
} else if ( s1. equals ( s2) ) {
System. out. println ( 2 ) ;
} else if ( s1. equalsIgnoreCase ( s2) ) {
System. out. println ( 3 ) ;
} else {
System. out. println ( 4 ) ;
}
}
}