比赛地址:点击打开链接
比赛做粗的4个题几乎都是水,感觉弱的水爆炸了。
这个题最初的思路是枚举找出四个点,做凸多边形的模板判断。C(30,4)。
结果答案不对。。后来发现模板上是要求点对的顺序是逆时针或顺时针输入。
于是用时钟排序的函数排序后判断:
bool cmp(point p1, point p2)
{
return atan2(p1.y, p1.x) < atan2(p2...
分类:
其他好文 时间:
2014-05-09 00:29:35
阅读次数:
381
代码风格1、有关状态机的设计风格(1)状态转移单独写成一个模块。(2)状态的操作和判断写成一个模块。2、如果芯片有乘法器,可以使用*运算符。3、三态一般只在顶层使用。子模块就将inout分解。4、敏感信号列表应包括:所有输入信号,判断条件。希望通过增减信号列表实现某项逻辑功能是大错特错的。5、cas...
分类:
其他好文 时间:
2014-05-08 17:55:02
阅读次数:
233
以下内容摘自《步步惊芯——软核处理器内部设计分析》一书
完整的OR1200处理器流水线数据通路图,如图9.12所示,图中显示了数据处理类、特殊寄存器访问类、转移类、异常处理类、乘法除法类、加载存储类指令处理过程中流水线各个阶段的数据流转。
(1)取指阶段:GENPC模块计算指令地址,然后通过指令Wishbone总线从指令存储器中取得指令,...
分类:
其他好文 时间:
2014-05-08 17:23:32
阅读次数:
323
我们用w[i][j]表示i到j的最短路的数量,dis[i][j]表示i到j的最短路,那么我们在floyd的时候,如果dis[i][k]+dis[k][j]==dis[i][j],根据乘法原理我们就w[i][j]+=w[i][k]*w[k][j],小于的时候我们就重新对w[i][j]赋值。
因为...
分类:
其他好文 时间:
2014-05-08 10:27:13
阅读次数:
249
高精度之大数的除法,大数据计算c语言一样强大...
分类:
其他好文 时间:
2014-05-08 04:27:19
阅读次数:
281
由于python具有无限精度的int类型,所以用python实现大整数乘法是没意义的,但是思想是一样的。利用的规律是:第一个数的第i位和第二个数大第j位相乘,一定累加到结果的第i+j位上,这里是从0位置开始算的。代码如下:
import sys
def list2str(li):
while li[0]==0:
del li[0]
res=''
for i in li:
res+...
分类:
编程语言 时间:
2014-05-07 23:13:21
阅读次数:
453
大数乘法ACM基本的问题之一,没有空中楼阁,一点一点的累积吧...
分类:
其他好文 时间:
2014-05-07 21:45:03
阅读次数:
290
以下内容摘自《步步惊芯——软核处理器内部设计分析》一书
串行除法与并行除法
8.2.1 串行除法
OR1200中使用的串行除法算法是“试商法”。设被除数是m,除数是n,商保存在s中,被除数的位数是k,其计算步骤如下(为了便于说明,在此处所有数据的最低位称之为第1位,而不称为第0位):
(1)取出被除数的最高位m[k],使用被除数的最高位减去除数n,如...
分类:
其他好文 时间:
2014-05-07 04:48:29
阅读次数:
343
【问题描述】给定n个矩阵{A1,A2,…,An},其中Ai与Ai+1是可乘的,i=1,2…,n-1。如何确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。例如,给定三个连乘矩阵{A1,A2,A3}的维数分别是10*100,100*5和5*50,采用(A1A2)A3,乘法次数...
分类:
其他好文 时间:
2014-05-06 23:56:56
阅读次数:
742
以下内容摘自《步步惊芯——软核处理器内部设计分析》一书
OR1200中乘法除法类指令共有9条,表8.3给出了所有的乘法除法类指令的作用及说明。
说明:表8.3是ORBIS32中给出的指令用法,但是通过分析OR1200的代码,发现有些指令并没有按照ORBIS32实现,如:l.mac、l.maci、l.msb,这三条指令有一个共同点就是涉...
分类:
其他好文 时间:
2014-05-06 19:45:29
阅读次数:
318