20110807

来源:互联网 发布:迭代器遍历数组 编辑:程序博客网 时间:2024/04/29 20:27

ZZU PRACTICE 5

只出了一道题,比赛时还是有些慌张,好几道都是题目都没看好就开始乱作一同了,对于问题的分析还是不够深入。虽然有些题有些用法自己确实不会,但是感觉做的真的很烂。

 

A - TrigonometricFunction

       HDU3903,蛋疼的数学题,不看了;

B - YY's new problem

       HDU3833,百度了一下,发现有人的数据存储方式十分特别。我们存的都是每个位置的数的大小,他存的是每个数所在的位置。之后使用双重循环进行处理,十分方便。对于题目条件的利用也很充足。首先题目之处数据的大小是从1~N的,并且没有重复,这就是这种特别的存储方式成为可能。然后由于要求的是-P[i2]=P[i2]-, 1<=i1<i2<i3<=N.,所以可是使用双重循环对位置做判定。最后由于数据是按照位置存储的,所以进行循环时就可以每次I += 2.

C - R(N)

       HDU3835,没什么好说的,除了这一句“打毛表啊,睡觉去吧, 你妹的脑子里净剩二分了吧~~!”。。。。。。。【对题目没有仔细分析。。。活该wa掉

D - Moonfang's Birthday

       HDU3855,╮(╯▽╰)╭,没赶上,再给5分钟就能a了吧?

E -Arctic Network

       ZOJ1914,最小生成树,我嘞个去,做最短路做出毛病了吧。。。。。竟然往最短路上想去了

F -Friendship

ZOJ 1133,明明记得以前做过的 T_T , 哎~~~看了学长的代码,感觉自己对于数的处理能力还是很欠缺啊。

·  int fun(int x)  {  

·     int sum=0;  

·      while(x){  

·         sum += x % 10;  

·         x /= 10;  

·     }  

·     return sum;  

·  }  //x的各个数位的和

·  int primer(int x){  

·     int i, temp, sum=0, sn=x;  

·      for(i=2; i*i<=x; i++){  //处理数的因数时一定要记得使用i*i<=n,这种形式的写法。

·         if(x % i == 0)  {  

·             temp = fun(i);  

·             while(x % i == 0)  //此处确保除以非质数时不会出错,循环除以i节省时间

·                 sum += temp, x /= i;  

·         }  

·     }  

·     if(sn == x)  

·         return -1; //由题意x不能是质数。 

·     if(x != 1)  

·         sum += fun(x); //x最后可能比sqrt(x)大。 

·     return sum;  

·  }//x的所有质因子的各个数位的和。  

G -Calculate With Abacus

ZOJ 3179 刚开始没看清题意。。。╮(╯▽╰)╭


原创粉丝点击