-
Math.abs()函数用法:用于返回一个int值的绝对值(正值)
-
调用math类里的相关数学计算公式,例如:sqrt()--开方;floor()--像下取整;abs()--取绝对值;pow(d,i)--开i次方;等时不需要写头文件引入,直接用即可。
-
import java.util.Arrays头文件的用法:引入数组的各种方法,例如sort为排序,tostring是显示结果
-
第一次感受到数学的作用,也不是很难的问题,就是非常普通的顺序结构新手上路种的1038和1039两个问题,1038可以用简单的数学逻辑或者各种方法都行,1039就运用到了重要不等式等不等式的数学知识。
public class Main
{
public static void main(String[]args)
{
Scanner in = new Scanner(System.in);
int n = in.nextInt();
double sum = 3.0 * Math.pow(n,1.0/3); //注意这一行就是1039运用不等式已知乘积,求最小和;运用pow()函数开方时,要注意幂次也要加小数点转换成浮点型,否则输出结果始终错误
System.out.printf("%.3f",sum);
}
}
-
T1040 这道题,实际的结果非常简单,但分析的思路有些比较高阶的数学公式和计算过程去分析p和k之间的关系,具体的分析过程在纸上演算后得出输出结果应为n
-
T1044 旅游观光问题 题目描述 有n个地方,编号为1->n,任意两个地方有公交车,从i到j的票价为(i+j)mod(n+1),而且这个票可以用无限次,你要把这些地方全部走一遍,问最小花费为多少。可以在任意地方开始和结束。 输入描述: 第一行一个数n 输出描述: 输出一行一个数表示答案 示例: 输入 10 输出 4 说明 1 -> 10 -> 2 -> 9 -> 3 -> 8 -> 4 -> 7 -> 5 -> 6,代价是4 备注: 对于100%的数据,有1 <= n <= 100000 分析: 第一次:1到n (1+n)mod(1+n)=0 第二次:n到2 (n+2)mod(1+n)=1 第三次: 2到n-1 (2+(n-1))mod(1+n)=0 以此推类,若n为偶数,参考n=10的情况 代价为n/2-1(减的1是第一次1->10的情况),若n为奇数,代价为(n+1)/2-1(可举例自己推) 由于c语言中除法是取整的,可总结为 (n+1)/2-1
-
T1047 解题思路: //数论题---即找出两个素数所不能表示的最大数 //塞瓦维斯特定理:a,b>1,a,b的最大公约数为1,使得ax+by=c无正数解的:c=a*b-a-b。