HDU 3784 继续xxx定律

HDU 2578 Dating with girls(1)

做3748之前要先做xxx定律  对于一个数n,如果是偶数,就把n砍掉一半;如果是奇数,把n变成 3*n+ 1后砍掉一半,直到该数变为1为止。

当n为3时,我们在验证xxx定律的过程中会得到一个序列,3,5,8,4,2,1,将3称为关键数,5,8,4,2称为覆盖数。现在输入n个数字a[i],根据关键数与覆盖数的理论,我们只需要验证其中部分数就可以确定所有数满足xxx定律,输出输入的n个数中的关键数。如果其中有多个关键数的话按照其输入顺序的逆序输出。

所以只需把n个数都当做关键数,一一标记a[i]的覆盖数,最后在这数列中找到未被标记的,逆序输出。

15 ms

 #include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
int a[],b[],i,n,x,y,c[]; //a为原数列,b为未被标记的数列,c为标记,记得c要开很大,因为要(x*3+1)/2可能很大
while(~scanf("%d",&n)&&n)
{
memset(c,,sizeof(c)); //清零
for(i=;i<=n;i++)
scanf("%d",&a[i]);
for(i=;i<=n;i++)
{
x=a[i];
if(!c[x]) //未被标记,若已被标记那么x的覆盖数已全被标记
while(x!=)
{
if(x%==)
{
x/=;
c[x]=;
}
else
{
x=(*x+)/;
c[x]=;
}
}
}
y=;
for(i=;i<=n;i++)
if(c[a[i]]==) //未被标记
b[++y]=a[i];
for(i=y;i>=;i--) //逆序输出
printf("%d ",b[i]);
printf("%d\n",b[]);
}
return ;
}

第二题 2578

大意是:给出n个数,满足x属于n,y属于n,x+y=k的方案数。      PS;1+3和3+1算两种,2+2只算一种

刚开始想用母函数做.....后来发现k<2^31,数组开不了这么大T^T

后来是周XX说用二分= =,想想也是......

然后各种改,错了6次!!!!     406MS

 #include <stdio.h>
#include <string.h>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
int T,n,k,i,a[],l,r,sum,x,mid,y;
scanf("%d",&T);
while(T--)
{
sum=;
y=;
scanf("%d%d",&n,&k);
for(i=;i<=n;i++)
{
scanf("%d",&a[i]);
if(k%==&&a[i]==k/) //如果存在k/2这个数,则方法数+1
y=;
}
a[]=-;
sort(a+,a+n+); //排序
for(i=;i<=n;i++)
if(a[i]<(k+)/ && a[i]!=a[i-]) //先1,3;3,1只算一种,不要重复算 ①
{
x=k-a[i]; //找y
l=;
r=n+; //②
mid=(l+r)/;
while(r-l>) //③
{
mid=(l+r)/;
if(a[mid]>x)
r=mid;
if(a[mid]<x)
l=mid;
if(a[mid]==x)
break;
}
if(a[mid]==x)
sum++;
}
sum=sum*+y; //sum*2+是否有x=y这种情况
printf("%d\n",sum);
}
return ;
}

做的时候有几个易错的地方:  ①②③

还有一组很难过得数据:

3 4

1 2 3

两道这样的题做了那么久.......╭(╯^╰)╮

HDU 3784 继续xxx定律 & HDU 2578 Dating with girls(1)的更多相关文章

  1. hdu 2578 Dating with girls(1)

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2578 Dating with girls(1) Description Everyone in the ...

  2. hdu 2578 Dating with girls(1) (hash)

    Dating with girls(1) Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  3. HDU 2578 Dating with girls(1) [补7-26]

    Dating with girls(1) Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  4. hdu 2578 Dating with girls(1) 满足条件x+y=k的x,y有几组

    Dating with girls(1) Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  5. hdu 2579 Dating with girls(2)

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2579 Dating with girls(2) Description If you have sol ...

  6. HDU 3782 xxx定律

    xxx定律 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  7. hdu 2579 Dating with girls(2) (bfs)

    Dating with girls(2) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  8. Top ShooterHDU2863&&继续xxx定律HDU3784

    继续xxx定律 HDU3784 先看这个题目:HDU3782 #include<iostream> #include<algorithm> #include<stdio. ...

  9. 每日一九度之 题目1033:继续xxx定律

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5502 解决:1351 题目描述:     当n为3时,我们在验证xxx定律的过程中会得到一个序列,3,5,8,4,2,1,将3称为关键数, ...

随机推荐

  1. poj 2154 Color【polya定理+欧拉函数】

    根据polya定理,答案应该是 \[ \frac{1}{n}\sum_{i=1}^{n}n^{gcd(i,n)} \] 但是这个显然不能直接求,因为n是1e9级别的,所以推一波式子: \[ \frac ...

  2. 使用Gitalk实现静态页面评论的功能

    使用静态页面的理由 本人在Github上使用github.io部署了一个静态主页,地址是http://aopstudio.github.io,用于存放一些笔记文件.虽然静态页面功能少,自动化程度低,不 ...

  3. 1.2Hello, World!的大小

    描述 还记得在上一章里,我们曾经输出过的“Hello, World!”吗? 它虽然不是本章所涉及的基本数据类型的数据,但我们同样可以用sizeof函数获得它所占用的空间大小. 请编程求出它的大小,看看 ...

  4. Uva 10766 Organising the Organisation (Matrix_tree 生成树计数)

    题目描述: 一个由n个部门组成的公司现在需要分层,但是由于员工间的一些小小矛盾,使得他们并不愿意做上下级,问在满足他们要求以后有多少种分层的方案数? 解题思路: 生成树计数模板题,建立Kirchhof ...

  5. BFS(两点搜索) FZOJ 2150 Fire Game

    题目传送门 题意:'#'表示草地,两个人在草地上点火,相邻的草地会烧起来,每烧一格等1秒,问最少要等几秒草地才烧完 分析:这题和UVA 11624 Fire!有点像,那题给定了两个点,这题两点不确定, ...

  6. Hbase源码分析:RPC概况

    RPC是hbase中Master,RegionServer和Client三者之间通信交流的纽带.了解hbase的rpc机制能够为通过源码学习hbase奠定良好的基础.因为了解了hbase的rpc机制能 ...

  7. putty中文乱码问题解决

    ###putty中文乱码问题解决 用putty从windows xp连接ubuntu server或者FreeBSD系统,其中中文部分乱码,经常遇到这个问题的时候,会觉得很郁闷.现共享一些解决这个问题 ...

  8. 简单的css缩放动画,仿腾讯新闻的分享按钮和美团app底部的图标样式

    最近看到一些好看的hover的图形缩放效果.然后自己就写了下,发现这2种效果都不错.如果伙伴们更好的实现方式可以在下面留言哦~ 还有美团的效果,我就不展示了,喜欢的可以去app应用上看看. 这两种效果 ...

  9. 我的DBDA类

    <?php class DBDA { public $host="localhost"; public $uid="root"; public $pwd= ...

  10. (转)淘淘商城系列——Redis持久化方案

    http://blog.csdn.net/yerenyuan_pku/article/details/72858975 Redis中设置key的过期时间 Redis中的expire命令用于设置key的 ...