ACM-数论与数组
文章平均质量分 68
LarryNLPIR
专注NLP/IR/Machine Learning/Data Mining
展开
-
POJ2478 Farey Sequence 欧拉函数与素数 数论题
这题主要是求1..n-1中与n互质的数的个数,并且要将其累加起来我写的代码套用了求欧拉数的函数,结果超时#include #include using namespace std;int eun[1000005] = {0};//求1..n-1中与n互质的数的个数int eular(int n){ int ret=1,i; for (i=2;i*i1) ret*=n-1; return ret;}int main(){ int n,i,sum; fo原创 2010-12-10 21:03:00 · 1600 阅读 · 0 评论 -
LeetCode Majority Element
Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.You may assume that the array is non-empty and the majority element always原创 2015-07-20 14:58:41 · 3062 阅读 · 0 评论 -
LeetCode Product of Array Except Self
Given an array of n integers where n > 1, nums, return an array output such that output[i] is equal to the product of all the elements of nums except nums[i].Solve it without division and in O(n).For原创 2015-07-19 14:47:06 · 3979 阅读 · 0 评论 -
LeetCode Contains Duplicate III
Given an array of integers, find out whether there are two distinct indices i and j in the array such that the difference between nums[i] and nums[j] is at most t and the difference between i and j is原创 2015-06-15 14:02:42 · 3779 阅读 · 0 评论 -
LeetCode Contains Duplicate II
Given an array of integers and an integer k, find out whether there there are two distinct indices i and j in the array such that nums[i] = nums[j] and the difference between iand j is at most k.思路分析:原创 2015-05-31 11:54:39 · 7812 阅读 · 0 评论 -
LeetCode Set Matrix Zeroes
Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.Follow up:Did you use extra space?A straight forward solution using O(mn) space is probably a bad idea.A si原创 2015-02-09 11:30:02 · 1390 阅读 · 0 评论 -
POJ 2262 哥德巴赫猜想证明与素数筛选
学习筛选1-n内的素数的方法,注意除了2之外的一切素数必然是奇数 此题与哥德巴赫猜想有关。#include #include using namespace std;int Array[1000000] = {0};int main(){//此题的难点在于如何最高效的在1-1000000内筛选素数,很容易导致超时或者超空间//从这题要学会素数筛选法//首先去掉大于2的所原创 2010-11-13 21:28:00 · 2302 阅读 · 1 评论 -
POJ 2739 素数筛选
POJ 2739 关键是找10000内质数的方法#include using namespace std;void create_primes(int * prime,int &size){//找出10000以内所有的质数,用因子排除法 int notPrime[10001] = {false}; int i ; for (i = 2; i < 10001 ;i++) {原创 2010-11-13 17:27:00 · 1677 阅读 · 0 评论 -
POJ 3070 Fibonacci数列 矩阵乘法及乘幂求法
可以先推算一下,会发现m0,m1,m2,m3等为方阵的乘幂,其第1行第2列就是Fibonacci数列的项,关键是如何求矩阵的乘幂呢?分奇数幂和偶数幂两种情况A(2)^n因为方阵的乘法有结合律,所以A(2)^n=A(2)^(n/2)*A(2)^(n/2),不妨设n是偶数所以求A(n)就可以化成求A(n/2)并作一次乘法,所以递归方程是:A(n)=A(n/2)^2但是如果n为奇数,可以A(n)=A((n-1)/2) * A((n+1)/2或者A(n)=A((n-1)/2)^2 * A(1)#include原创 2010-12-11 17:16:00 · 2006 阅读 · 0 评论 -
LeetCode Majority Element II
Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorithm should run in linear time and in O(1) space.Hint:How many majority elements could it possibly hav原创 2015-07-20 15:10:04 · 3766 阅读 · 1 评论