随笔分类 - ACM—其他
摘要:unique()函数是一个去重函数,STL中unique的函数 unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除。他是c++中的函数,所以头文件要加#include,具体用法如下: int num[100]; unique(num,mun+n)...
阅读全文
摘要:因为感觉比较有用。这几次比赛,用过几次,所以写个程序,总结一下。如果用sscanf(s, "%d.%d", &a, &b); 的时候,一定要注意是否s里一定有小数点。 1 #include 2 #include 3 using namespace std; 4 5 int main() 6 {...
阅读全文
摘要:上几次的一道cf题。题目:http://codeforces.com/contest/376/problem/C性质:(4)a与b的和除以c的余数(a、b两数除以c在没有余数的情况下除外),等于a,b分别除以c的余数之和(或这个和除以c的余数)。例如,23,16除以5的余数分别是3和1,所以(23+16)除以5的余数等于3+1=4。注意:当余数之和大于除数时,所求余数等于余数之和再除以c的余数。例如,23,19除以5的余数分别是3和4,所以(23+19)除以5的余数等于(3+4)除以5的余数。(5)a与b的乘积除以c的余数,等于a,b分别除以c的余数之积(或这个积除以c的余数)。例如,23,1
阅读全文
摘要:题目:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=430题意:两个字符串,第二个不能错七次,不能重复思路:今天是帮学弟看题的,没帮学弟看出错误来。。。真惭愧。。。于是自己写了一个。。 1 #include 2 #include 3 using namespace std; 4 5 int main() 6 { 7 int x,i,j,f[200]; 8 char s1[10000],s2[10000]; 9 int s1...
阅读全文
摘要:题目:http://poj.org/problem?id=3253没用long long wrong 了一次 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include10 #include11 using namespace std;12 13 int main()14 {15 long long n,i,j,a,sum,cnt;//或者 __int64 n,i,j,a,sum,cnt;16 priority...
阅读全文
摘要:题目:http://poj.org/problem?id=3006筛选法求素数 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 11 int prime[1000005];//代表是否是素数12 int main()13 {14 int s,max=1000005;15 int x,y,z,i;16 17 s=0;18 prime[0]=pri...
阅读全文
摘要:题目:http://poj.org/problem?id=3295题意:p,q,r,s,t,是五个二进制数。K,A,N,C,E,是五个运算符。K:&&A:||N:!C:(!w)||xE:w==x题意是让求如果对于五个数的所有情况一个式子总是恒为1,那么这个式子就是tautology。输出tautology。否则输出not。5个数,最多有2^5种情况。判断式子是不是恒为1,只需要从后往前判断即可。这题好长时间没看懂,代码也是看网上大神的 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace
阅读全文
摘要:题目:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2127&cid=1184哈夫曼树。 1 #include 2 #include 3 #include 4 int a[11000]; 5 6 int cmp(const void *a,const void *b) 7 { 8 return *(int *)a-*(int *)b; 9 }10 int main()11 {12 int n,i,sum=0,t,j;13 scanf("%d",&n);14 for(i=0; i<n; i++)15
阅读全文
摘要:用字典树没过,学习了一下map;参考博客:http://blog.csdn.net/zhengnanlee/article/details/8962432AC代码 1 #include 2 #include 3 #include 4 5 using namespace std; 6 int main() 7 { 8 int n,m,i; 9 while(cin>>n&&n)10 {11 cin>>m;12 mapmp;13 string name;14 for(i=0; i>name;17 ...
阅读全文
摘要:题目:http://poj.org/problem?id=2109题意:求一个整数k,使得k满足kn=p。思路:exp()用来计算以e为底的x次方值,即ex值,然后将结果返回。log是自然对数,就是e为底计算的。换底公式 log(b) = log(b) / log(a)。float 的范围为-2^128 ~ +2^127,也即-3.40E+38 ~ +3.40E+38;double 的范围为-2^1024 ~ +2^1023,也即-1.79E+308 ~ +1.79E+308 1 #include 2 #include 3 int main() 4 { 5 double n,p; 6 ...
阅读全文
摘要:位运算符:包括:1。&位与符 2。|位或符 3。^位异或符 4。~位取反符以操作数12为例。位运算符将数字12视为1100。位运算符将操作数视为位而不是数值。数值可以是任意进制的:十进制、八进制或十六进制。位运算符则将操作数转化为二进制,并相应地返回1或0。位运算符将数字视为二进制值,并按位进行相应运算,运算完成后再重新转换为数字。例如:表达式10&15表示(1010 & 1111),它将返回表示1010的值10。因为真真得真,或者是11得1,同位全是1结果也是1表达式10|15表示(1010 | 1111),它将返回表示1111的值15。假假得假。全零得零。表达式10
阅读全文
摘要:卡特兰数又称卡塔兰数,是组合数学中一个常出现在各种计数问题中出现的数列。卡特兰数前几项为 : 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343059613650, 1289904147324, 4861946401452, ... 1 #include<stdio.h> 2 #incl
阅读全文
摘要:View Code 1 #include <stdio.h> 2 #include<math.h> 3 int prime[1000000]; 4 int main() 5 { 6 int s,max; 7 while(scanf("%d",&max)!=EOF&&max!=0) 8 { 9 s=0;10 prime[0]=prime[1]=0;prime[2]=1;11 for(int i=3;i<max;i++)12 prime[i]=i%2==0?0:1;13 int t=(int)sqrt(max*1.0);..
阅读全文

浙公网安备 33010602011771号