tzoj专题

TZOJ 1072: 编辑距离(动态规划)

1072: 编辑距离 时间限制(普通/Java):1000MS/10000MS     内存限制:65536KByte 总提交: 917            测试通过:275 描述 假设字符串的基本操作仅为:删除一个字符、插入一个字符和将一个字符修改成另一个字符这三种操作。 我们把进行了一次上述三种操作的任意一种操作称为进行了一步字符基本操作。 下面我们定义两个字符串的编辑距离

TZOJ 1431 整数的尾数

答案: #include<stdio.h>int main(){int a = 0, b = 0, n = 0;int i = 0, j = 0;while (scanf("%d %d", &a, &b) != EOF){int arr[100] = { 0 };int count = 0;if (a == 0 && b == 0) //如果ab都等于0{break; //跳出循环,

TZOJ 1429 小明A+B

答案: #include <stdio.h> int main() {int T=0, A=0, B=0, sum=0;scanf("%d", &T); //输入测试数据的组数while (T--) //循环T次{scanf("%d %d", &A, &B); //输入AB的值sum = A + B;if (sum >= 100) //如果是三位数{sum %= 100;

TZOJ 1405 An easy problem

翻译有些出错,但大概是那个意思 答案: #include <stdio.h> #include <ctype.h> //引用库函数isupper的头文件int main() {int T = 0, i = 0;scanf("%d", &T); //要输入的行数while (T--) //循环T次{char c;int y = 0;scanf("%c %d", &c, &y)

TZOJ 1420 手机短号

答案: #include <stdio.h> #include <string.h> int main() {int n = 0;scanf("%d", &n);while (n--) //输入n次{char phone[12];scanf("%s", phone);printf("6%s\n", phone + 6); //跳过数组前6个元素,从第7个元素开始打印}retu

TZOJ 1389 人见人爱A^B

答案: #include <stdio.h> int pow(int a, int b) //定义一个a的b次方函数{int m = 1;int i = 0;for (i = 0; i < b; i++) //b次方{m = (m * a) % 1000; // %1000用来控制最后输出为后三位,同时每次乘法结果取模,避免溢出 }return m; //返回后三位数}

TZOJ 1375 偶数求和

答案: #include <stdio.h> int main(){int n = 0, m = 0, j = 0, s = 0, count1 = 0,k=0;int arr[101] = { 0 }; //选择数组是用来控制打印格式while (scanf("%d%d", &n, &m) == 2 && (n <= 100 && n>0)) //多组数据输入{int sum =

TZOJ 1376 母牛的故事(递推和递归)

答案1(递推): #include<stdio.h>int main() {int n=0,i=0;int a[55] = { 0,1,2,3,4 }; //数组下标就相当于过了几年,以第四年母牛生出的第一只小母牛成年为周期,初始化前四年的值while (scanf("%d", &n) == 1 && (n >= 0 && n < 55)) //使输入符合if (n == 0)

TZOJ 1370 数值统计

答案: #include <stdio.h> int main() {int n=0,i=0;int fcount = 0; //负数计数器int zcount = 0; //整数计数器int pcount = 0; //小数计数器while (scanf("%d", &n) == 1 && n != 0) //多组输入,并且不为0{double num=0.0;

TZOJ 1373 求多项式的和

答案: #include <stdio.h> int main() {int m = 0;scanf("%d", &m); // 读取测试实例的个数 while (m--) //循环m次{int n = 0, i = 0;scanf("%d", &n); // 读取求和项数n double sum = 0.0;for (i = 1; i <= n; i++) //分母从1开始

TZOJ 3348: 线段相交Ⅲ(叉乘+快速排斥实验+跨立实验)

线段相交有两种情形:一种是“规范相交”,另一种是“非规范相交”。规范相交是指两条线段恰有唯一一个不是端点的公共点。即如果一条线段的端点在另一条线段上则不视为相交。如果两条线段有部分重合,也不视为相交。而非规范相交则把以上两种情况都视为相交。如下图所示: 规范相交认为a,b两种情况都是不相交的,而非规范相交认为a,b两种情况都是相交的。 本题要求判断两条线段是否相交。如果是规范相交则输出