UVa 1588 换抵挡装置】的更多相关文章

前言 题目 大意是说,两个槽能够插在一起,并保证每一列的高度不高于3,保证最短长度. 思路 思路很简单,取短字符串遍历长字符串的每一个位置,纪录下位置,并取最短即可. 实现 //习题3-11 换抵挡装置 void caculate17() { char n1[1000], n2[1000]; while (scanf("%s\n%s", n1, n2) != EOF) { char *min_arr, *max_arr; if (strlen(n1) < strlen(n2))…
题目描述:算法竞赛入门经典习题3-11 题目思路:1.两长条移动匹配 2.上下调换,取小者 #include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { ],s2[] ; while(gets(s1)){ gets(s2) ; int len1 = strlen(s1); int len2 = strlen(s2); int i,j ; ;i<len1;i++){ ; ;j<len2…
一:题目 给你连个长度分别为n1,n2且每列高度只为1或2的长条,然后将他们拼在一起,高度不能超过3,问他们拼在一起的最短长度 二:实现思路 1.获取主动轮和从动轮的数据. 2.主动轮不动,从动轮从左向右开始进行卡位,不断更新卡位成功(最大高度不超过3)时的最小长度 3.注意:当我们在某一时刻的长度若是小于等于主/从动轮的长度时,不向下判断 三:测试数据 输入数据 输出数据 四:模拟卡位 (一)主动轮+从动轮:最小长度两者之和17 (二)开始第一步:高度超过3,失败 (三)第二步:卡位成功,最小…
题意:uva的题,每道都是有背景的orz,都是阅读理解 题解:暴力模拟,拿着短的那个串,对着长的一格一格往左滑,每滑一格暴力扫一遍.然后再从头往右滑,我这里wa了三发,wa了后习惯性瞎改,改到后来循环都改错了. shortest solution 用while循环ij当指针,还写了个函数处理左右滑. #include<stdio.h> #include<string.h> #include<math.h> #include<algorithm> #inclu…
这道题思路并不难想,在做题过程中主要遇到的困难有: 因为没有仔细的考虑边界情况,没有分析全面,导致因=没有取到而得不出正确结果,浪费的大量时间. 今后在做这类题目时,一定要先进行一个比较全面的分析+模拟,再动手写代码,避免浪费时间. #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define maxn 1000 int main(){ int len1,le…
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 模拟一下就好 一位一位地往右移动. [代码] #include <bits/stdc++.h> using namespace std; const int N = 300; int a[N+10]; int b[N+10]; string s1,s2; int ans; void can(int l,int r){ for (int i = l,j = 1;i <= r && j <= (int)…
A research laboratory of a world-leading automobile company has received an order to create a special transmission mechanism, which allows for incredibly efficient kickdown - an operation of switching to lower gear. After several months of research e…
题意:有1,5,10,25,50五种硬币,给出一个数字,问又几种凑钱的方式能凑出这个数. 经典的dp题...可以递推也可以记忆化搜索... 我个人比较喜欢记忆化搜索,递推不是很熟练. 记忆化搜索:很白痴的算法,直接交给下一层去算,算完记录下来以免之后重复算. 代码: /* * Author: illuz <iilluzen[at]gmail.com> * Blog: http://blog.csdn.net/hcbbt * File: _uva674.cpp * Create Date: 20…
题目链接:https://vjudge.net/contest/59424#problem/A 题目大意: 有5种硬币, 面值分别为1.5.10.25.50,现在给出金额,问可以用多少种方式组成该面值. 解题思路: 首先我们可以想到,用这些硬币组成11有多少种. 就是组成10的种数,加上组成6的种数,加上组成1的种数,因为这些面值都是加上一枚硬币就得到11了. 然后我们又能继续去求1组成10的种数,那么明显就是9,5,0的组成数的和. 需要注意的是1+5自底向上的方法,需要注意的是1+5和5+1…
题意: 给出n个白点和n个黑点的坐标,要求用n条不相交的线段把它们连接起来,其中每条线段恰好连接一个白点和一个黑点,每个点恰好连接到一条线段 解析: 带入负的欧几里得距离求就好了 假设a1-b1 与 a2-b2相交 则dis(a1, b1) + dis(a2, b2) 一定大于 dis(a1, b2) + dis(a2, b1) 四边形的对角线一定大于两条对边... 所以..边的权值取负的欧几里得距离..来一次km就好了   km是求最大  而负的最大 对应整的最小 而整的最小 又能对应不相交…