- 博客(27)
- 资源 (5)
- 收藏
- 关注
原创 杭电acm2049
组合 + 错排错排公式 的 d [ i ] = (i - 1) * ( d[i - 1] + d[ i - 2] ); double i, t1=1, t2=1, t3=1;我开始写的是 int ,总是WA,写成 double 就AC了,这种情况碰到太多了。#include double cal(int n, int m) { double i, t1=1, t2=1, t3
2015-03-18 11:04:36 1784
原创 杭电acm2061
我把cre,sco写成 int 类型会超时,不解。#include int main() { int n, k, flag; double a1, a2, cre, sco; scanf("%d", &n); while(n--) { a1 = 0.0; a2 = 0.0; flag = 0; scanf("%d", &k); w
2015-03-17 22:07:41 1152
原创 杭电acm2060
#include int main() { int n, cScore, oScore, m, ans, i,d[6]={2, 3, 4, 5, 6, 7}; scanf("%d", &n); while(n--) { ans = 0; scanf("%d%d%d", &m, &cScore, &oScore); if(m==6) { ans = 27; }
2015-03-17 21:26:28 1264
原创 杭电acm2083
从n / 2处开始距离最短。#include #include int cmp(const int *a, const int *b) { return *a - *b;}int main() { int m, n, i, ans, a[10001]; while(~scanf("%d", &m)) { while(m--) { ans = 0; scan
2015-03-14 17:20:17 1129 1
原创 杭电acm2047
#include #include int main() { int n, i; __int64 d[40][2]={ {1, 2} }; /*d[i][0] indicate the sequence's last char is not O d[i][1] opposite*/ for(i=1; i<40; i++) { d[i][0] = d[i-1][1];
2015-03-13 22:24:10 1574
原创 杭电acm2044
#include int main() { int n, i, k, b; __int64 a[50]={1, 2, 3}; for(i=3; i<50; i++) a[i] = a[i-1] + a[i-2]; while(~scanf("%d", &n)) { while(n--) { scanf("%d%d", &k, &b); printf("%
2015-03-13 14:11:08 828
原创 杭电acm2045
a[2] = 6;#include int main() { int n, i; __int64 a[50]={3, 6, 6}; for(i=3; i<50; i++) a[i] = a[i-1] + a[i-2] * 2; while(~scanf("%d", &n)) { printf("%I64d\n", a[n-1]); } return 0;
2015-03-13 13:51:59 976
原创 杭电acm2046
#include int main() { int n, i; __int64 a[50]={1, 2, 3}; for(i=3; i<50; i++) { a[i] = a[i-1] + a[i-2]; } while(~scanf("%d", &n)) { printf("%I64d\n", a[n-1]); } return 0;}
2015-03-13 13:38:20 1014
原创 杭电acm2085
简单的递归。我打算复试结束了再看算法。现在靠做题练习。#include int main() { int n, i; __int64 a[34]={1, 3, 11, 41}, b[34]={0, 1, 4, 15}; for(i=4; i<34; i++) { a[i] = a[i-1] * 3 + b[i-1] * 2; b[i] = a[i-1] + b[
2015-03-13 13:23:31 538
原创 杭电acm2048
最后数据会超过 2 ^32 - 1。输出%用%%。#include #include int main() { int n, i, k; __int64 a[21][2]={{1, 0}, {1, 0}, {2, 1}}; for(i=3; i<21; i++) { a[i][0] = i * a[i-1][0]; a[i][1] = (i-1) * (a[i-1]
2015-03-13 13:06:11 912
原创 杭电acm2091
PE了好多次。' * ‘'在格式化输入输出中的作用。在scanf()中,用%*#,就代表读入一个#的数据,但不处理。比如:scanf("%c%*c%c", &a, &b);输入ABC,此时,变量a='A', c='C'。而中间的'B',只是读入,没有做任何处理。在printf()中,%*#用来设定场宽。我们平时用%2d一类的转义字符来代表输出整形d时场宽为2个字符,但这种方
2015-03-13 11:33:01 1645
原创 杭电acm2024
第31行的getchar();如果写了就是WA,不写就是AC。但是第九行的getchar();一定要写。函数gets的原型为:char*gets(char*buffer); 在 stdio.h中定义,如果要程序中用到此函数需包含#includegets()函数用来从标准输入设备(键盘)读取字符串直至接受到换行符或EOF时停止结束,并将读取的结果存放在buff
2015-03-13 00:24:14 2684 2
原创 杭电acm2022
fabs()是对浮点数取绝对值,abs()是对整数取绝对值。printf("%d %d %.0lf\n", a+1, b+1, max);%.0lf#include #include int main() { int n, m, i, j, a, b; double d, max; while(~scanf("%d%d", &m, &n)) { max = 0
2015-03-12 23:35:51 1499
原创 杭电acm2018
简单的递归#include int main() { int n, a[55]={1, 2, 3, 4, 6}, i; for(i=5; i<55; i++) a[i] = a[i-1] + a[i-3]; while(~scanf("%d", &n)) { if(n==0) break; printf("%d\n", a[n-1]); } return
2015-03-12 16:20:37 2168
转载 杭电acm2015
c语言中任何非零值在需要布尔值的地方都被看做true#include int main(void){ int i, n, m, b, c; while (scanf("%d%d", &n, &m) != EOF) { b = 2; c = 0; for (i = 0 ; i < n / m ; i++)
2015-03-12 15:47:05 1544
转载 杭电acm2021
#include int main() { int n, sum, a, b, c, d, e, f, i, temp ,ans; while(scanf("%d", &n) != EOF) { if(n==0) break; sum = 0; for(i=0; i<n; i++) { scanf("%d", &temp); sum += temp / 100;
2015-03-12 14:35:01 2338
原创 杭电acm1106
sort(a, a+ids+1);这里要+1#include #include #include using namespace std;int main(void) { int a[1001], i, flag, ids; char s[1001]; while(scanf("%s", s) != EOF) { flag = 0; i = 0; ids =
2015-03-10 11:11:22 1588
转载 杭电acm2036
http://acm.hdu.edu.cn/showproblem.php?pid=2036利用了已知三角形的三个顶点的坐标求面积的方法。
2015-03-08 15:56:52 1697
转载 杭电acm1097
我起先写的是在循环中对100取余,然后对10取余输出答案,可是提交后超时。下面是转载的。#include int calc(int a, int b){ if(a==0 || a==1 || a==5 || a==6) return a; if(a==2) { if(b%4==1) return 2; if(b%4==2) retu
2015-03-04 19:52:08 1167
原创 杭电acm2503
min = s1<s2? s1 : s2; for(j=2; j<min/2; j++) { if(!(s1%j) && !(s2%j)) { s1 /= j; s2 /= j; j = 1; } }这段代码是主要部分。#include int main() { int n, i, j, a, b, c, d, s1, s
2015-03-02 17:55:50 628
原创 杭电acm2041
#include int main() { int n, i, m, a[45]; while(scanf("%d", &n) != EOF) { a[1] = 0; a[2] = 1; a[3] = 2; for(i=4; i<=40; i++) a[i] = a[i-1] + a[i-2]; for(i=0; i<n; i++) { scanf("%
2015-03-02 17:04:25 1912
原创 杭电acm2027
#include #include int main() { int n, i, j, l, num1, num2, num3, num4, num5; char s[101]; while(scanf("%d", &n) != EOF) { for(i=0; i<n; i++) { num1 = 0; num2 = 0; num3 = 0; num4
2015-03-02 16:44:28 989
原创 杭电acm2520
ans = ((m + k) / 2 * n) % 10000;写成这样AC,ans = (n / 2 * (m+k)) % 10000;写成这样WA。未解#include int main() { int n, m, k, ans, t, i; while(scanf("%d", &t) != EOF) { for(i=0; i<t; i++) { scan
2015-03-02 15:18:11 755
原创 杭电acm2040
#include int main() { int n, i, j, a, b, sum1, sum2; while(scanf("%d", &n) != EOF) { for(i=0; i<n; i++) { scanf("%d%d", &a, &b); sum1 = 0; sum2 = 0; for(j=1; j<a; j++) if(a%
2015-03-01 17:00:30 1664 1
原创 杭电acm2053
#include int main() { int n, i, flag; while(scanf("%d", &n) != EOF) { flag = 1; // 1 表示 off, -1 表示 on for(i=1; i<=n; i++) { if(n%i==0) flag = -flag; } if(flag == 1) printf
2015-03-01 16:31:23 1510
原创 杭电acm2058
J 如果不这样写会超市#include #include int main() { int n, m, i, j; while(scanf("%d%d", &n, &m) != EOF) { if(n==0 && m==0) break; for(j=(int)sqrt((double)(2*m)); j>=1; j--) { i = (2*m/j+1
2015-03-01 16:19:25 1430
原创 杭电acm2069
暴力解法,同百钱买白鸡#include int main() { int n, i, j, k, l, m, ans; while(scanf("%d", &n) != EOF) { if(n==0) { printf("1\n"); continue; } ans = 0; for(i=0; i<=n; i++) for(j=0; j*5<=n-
2015-03-01 15:54:21 1625
文本挖掘(英文版)
2016-04-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人