随笔分类 - math
摘要:http://www.cppblog.com/LeoW/archive/2012/03/08/167427.htmlView Code #include<stdio.h>#include<string.h>#include<math.h>#define lld __int64int main(){ int i, j, cas; int n; scanf("%d", &cas); while(cas--) { scanf("%d", &n); double sum1 = n*log10(n*1.0); l
阅读全文
摘要:http://www.cnblogs.com/183zyz/archive/2011/04/12/2013372.htmlView Code #include<stdio.h>#include<string.h>int f(int x){ int i, sum = 1; for(i = 1; i <= x; i++) sum *= 10; return sum;}int gcd(int a, int b){ return b ? gcd(b, a%b) : a;}int main(){ int i, j, cas; char s[33]; ...
阅读全文
摘要:很有技巧的一道数学题。本题思路:假设要求的数字为A,去除的为第k位,那么按照这个规则,将A划分为三段:高位c,k位b,低位a,则x=a*10^(k+1)+b*10^k+c去除后为B=a*10^k+c,那么n=A+B=(11a+b)*10^k+2c;但是由于2c有可能带来进位,可能会使b进1,但是不会对a出现影响,那么a就可以直接求出了。再通过a求出b,然后求出c;求c时分进位和没有进位两种情况,记录下来,然后排序一下输出。View Code #include<stdio.h>#include<algorithm>using namespace std;int main(
阅读全文
摘要:简单数学题,找规律,找到了就发现很水。从三个角度看这个图,level,left,right,如下图,题目的答案就是3个图上2个点之间的层数的高度差之和。例如6 12 ,level=1,left=1,right=1,答案就是3。例如 3 12 ,level=2,left=1,right=2,答案就是6。View Code #include<stdio.h>#include<math.h>using namespace std;int main(){ int m,n,cm,cn,rm,rn,lm,ln; //c表示level图 ,r表示right图,l表示left图 whi
阅读全文