目录
选择题
- round就是将浮点数+0.5,然后向下取整
编程题
import java.util.*; public class Parenthesis { public boolean chkParenthesis(String A, int n) { // write code here if(n%2!=0){ return false; } Stack<Character> stack =new Stack<>(); int i=0; while (i<n){ char c=A.charAt(i); if (c=='('||c==')'){ if (c=='('){ stack.push(c); i++; }else { if (stack.isEmpty()){ return false; }else { char c1=stack.pop(); if(c1!='('){ return false; } i++; } } }else { return false; } } return true; } }
import java.util.*; public class Main{ public static void main(String args[]){ Scanner sc= new Scanner(System.in); int n=sc.nextInt(); int f1=0; int f2=1; while(f2<n){ int f3=f2+f1; f1=f2; f2=f3; } int min=n-f1>f2-n? f2-n:n-f1; System.out.println(min); } }
- f2是第一个大于等于n的斐波那契数,f1就是最后一个小于n的斐波那契数,只要比较那个跟n的差值更小就是最小步数变为斐波那契数