分析:判断密码是否安全。
三个条件:至少一个元音字母,连续三个字母不能同时为元音或辅音,连续两个字母不能相同,但"ee"和"oo"除外。
#include
using namespace std;
bool isyuan(char c)
{
return c=='a' || c=='e' || c=='i' || c=='o' || c=='u';
}
bool judge(char a...
分类:
其他好文 时间:
2015-06-03 21:40:44
阅读次数:
111
题意:出现换行,出现输出‘-’,每一行的加上现在的单词如果长度超过80则换行,每个单词前留一个空格,结束时要输出换行。
#include
using namespace std;
int main()
{
char s[100];
int len,cnt=0;
while(scanf("%s",s)==1)
{
if(!strcmp(s,""))
{
cnt...
分类:
Web程序 时间:
2015-06-03 19:39:44
阅读次数:
152
分析:裴蜀定理,a,b互质的充要条件是存在整数x,y使ax+by=1。存在整数x,y,使得ax+by=c,那么c就是a,b的公约数。
假设存在数a ,因为对任意x方程都成立,则有当x=1时f(x)=18+ka;有因为f(x)能被65整除,所以f(x)=n*65。即18+ka=n*65有整数解则说明假设成立。
ax+by = c的方程有整数解的一个充要条件是:c%gcd(a, b) == 0。然...
分类:
其他好文 时间:
2015-06-03 19:39:23
阅读次数:
151
题意:给n个点的坐标,求距离最近的一对点之间距离的一半。
分析:分治法求最近点对。
#include
#include
#include
using namespace std;
#define N 100005
double min(double a,double b)
{
return a<b?a:b;
}
struct POINT
{
double x,y;
};
POIN...
分类:
其他好文 时间:
2015-06-03 15:54:03
阅读次数:
135
分析:暴力,注意有公共点是指两个城池是否相邻。
#include
#include
using namespace std;
bool map[505][505];
vector vx;
vector vy;
int n,m;
bool judge(int x,int y)
{
bool t1,t2,t3,t4;
t1=t2=t3=t4=0;
if(x>1 && map[x-1][y...
分类:
其他好文 时间:
2015-06-03 10:04:18
阅读次数:
115
题意:一个数列,a1,a2,a3,a4,---,an,需要最少修改多少个元素,使得这个序列严格递增?
分析:因为a[i]=a[i],整理得a[i+1]-(i+1)>=a[i]-i。令b[i]=a[i]-i。则可以求出b[i]的最长不下降子序列的长度len,最后用n-len即为需要改变的最少的元素个数。
#include
#include
using namespace std;
int a[...
分类:
其他好文 时间:
2015-06-03 10:03:00
阅读次数:
121
分析:每个盘子都可以放到三个柱子上的任意一个,所以是3^n。
#include
using namespace std;
int main()
{
__int64 num[31]={1};
int i,t,n;
for(i=1;i<=30;i++)
num[i]=num[i-1]*3;
scanf("%d",&t);
while(t--)
{
scanf("...
分类:
其他好文 时间:
2015-06-02 23:27:13
阅读次数:
143
分析:两个人都足够聪明,因此每个阶段都拿最大的。dp[sa][ea][sb][eb]分别表示区间1的开始为sa,结束为ea,区间2的开始为sb,结束为eb时能拿到的最大值。之后分别从四个方向上拿,是个搜索的过程。
[cpp] view
plaincopyprint?
#include
using namespace std;
...
分类:
其他好文 时间:
2015-06-02 22:10:58
阅读次数:
164
分析:使用64位来保存整数,一个64位保存9位,最后920ms飘过,如果使用ASCII码模拟绝对TLE。貌似这题可以使用FFT(快速傅立叶变换)解决,但是这种方法比较复杂,还没有理解。
#include
using namespace std;
__int64 a[10001],b[10001]; //整数a,b,每个存储9位
__int64 ans[40001]; //...
分类:
其他好文 时间:
2015-06-02 21:57:07
阅读次数:
124
分析:并查集实现最小生成树。不能用cin和cout(使用了ios::sync_with_stdio(false);都不行),否则TLE。
#include
#include
#include
using namespace std;
#define N 1005
int father[N*N];
struct EDGE
{
int u,v;
int len;
bool operator...
分类:
其他好文 时间:
2015-06-02 20:11:10
阅读次数:
575