题意: 有一个环形序列,可以将其切成连续的k段子序列,那么gcd( 每段子序列的和 )就是优美程度.输出n个整数,表示当k=[1, n] 时的最大优美程度. 思路: 观察一下,当切成1段的时候,gcd就是sum[整个序列],为最大.考虑切成2段,那么最好就是能让这个环切成2段和为sum[整个序列]/2的子序列了.考虑切成3段,那么最好就是能让这个环切成3段和为sum[整个序列]/3的子序列了.继续下去,这不就是求sum[整个序列]的约数吗? 假设约数有k个,从大到小分别为factor[1-R].…
题目大意 $n$($1\le n\le 2000$)个正整数 $a_1, a_2, \dots, a_n$($a_i\le 5\times 10^7$)分布在一个圆环上. 定义 $b_k$ 为:将环上的数划分成 $k$ 段,每段上的数之和的 GCD 的最大值. 求 $b_1, b_2, \dots, b_n$ . 解法 首先,不难看出, $b_k$ 是 $n$ 个数之和 (记做 $S$)的约数. 考虑到 $S$ 的约数并不多($2\sqrt{n}$ 是很松的上界,并且往往 $n$ 越大这上界越松…
#1245 : 王胖浩与三角形 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个三角形,三边长为a,b,c.他有特殊的能力,能增加三条边的边长,增加的总长度不能超过l. 他想通过合理地使用他的特殊能力,使得三角形的面积最大. 输入 第一行一个整数T,表示测试数据个数. 以下T行,每行一个四个整数a,b,c,l. 数据范围: 1<=T<=104, 1<=a,b,c<=106, 0<=l<=106 输出 输出T行,每行一个实数,表示三…
#1246 : 王胖浩与环 时间限制:6000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个环,环上有n个正整数.他有特殊的能力,能将环切成k段,每段包含一个或者多个数字. 对于一个切分方案,王胖浩将以如下方式计算优美程度, 首先对于每一段,求出他们的数字和.然后对于每段的和,求出他们的最大公约数,即为优美程度. 他想通过合理地使用他的特殊能力,使得切分方案的优美程度最大. 输入 第一行一个整数n,表示环上的数字个数. 接下来一行包含n个正整数,第i个数ai表示环上第i个…
//已知三角形三边长求面积 #include <stdio.h> #include <math.h> int main() { float a,b,c,p,s; int x=0; while(1) { printf("请输入三角形边长给a"); scanf("%f",&a); if(a==9999.000000) { printf("程序运行结束"); break; } printf("请输入三角形边长给…
""" 已知三角形的边长求他的面积和周长 Author:罗万财 Date:2017-3-3 """ import math a=float(input('a=')) b=float(input('b=')) c=float(input('c=')) if a+b>c and a+c>b and b+c>a: d=a+b+c e=(a+b+c)/2 f=math.sqrt(e*(e-a)*(e-b)*(e-c)) print('三…
考核内容: 写一个程序,可以获取从键盘上输入的的三个数,并能够判断是否可以以这三个数字作为边长来构成一个三角形,如果可以的话,输出此三角形的周长及面积: 答案: #include<stdio.h> #include<math.h> #include<stdlib.h> double b1,b2,b3; double p; bool tool(double b1,double b2,double b3) { if((b1+b2>b3)&&(b1+b3…
#!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现计算圆面积,三角形面积,长方形面积'''flag=Truewhile flag: pi=3.1415926 print("请按照选择输入:c,r,t的大小写分别用来计算圆,矩形以及三角形的面积") print("输入c或者C是用来计算圆的面积") print("输入r或者R是用来计算长方形的面积") print("输入t或者…
题目链接 题目描述 判断一个点与已知三角形的位置关系. 输入输出格式 输入格式: 前三行:每行一个坐标,表示该三角形的三个顶点 第四行:一个点的坐标,试判断该点与前三个点围成三角形的位置关系 (详见样例) 所有坐标值均为整数. 输出格式: 若点在三角形内(不含边界),输出1: 若点在三角形外(不含边界),输出2: 若点在三角形边界上(不含顶点),输出3: 若点在三角形顶点上,输出4. 输入输出样例 输入样例#1: (0,0) (3,0) (0,3) (1,1) 输出样例#1: 1 法一:面积法…
一. 数学基础: 已知三角形的三边,计算三角形面积,需要用到海伦公式: 即p=(a+b+c)/2 二. 算法: 输入三个边长,套用海伦公式计算面积,并输出. 可以先判断是否可以构成三角形,即任意两边之和大于第三边,可以构成三角形情况下再计算,可以增加严谨性. 三. 代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <stdio.h> #include <math.h> int main() {  printf("请依次输入三…