URAL 1225-Flags(规律递推)
来源:互联网 发布:袁姗姗知乎 编辑:程序博客网 时间:2024/05/16 15:03
A - A
Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uDescription
On the Day of the Flag of Russia a shop-owner decided to decorate the show-window of his shop with textile stripes of white, blue and red colors. He wants to satisfy the following conditions:
- Stripes of the same color cannot be placed next to each other.
- A blue stripe must always be placed between a white and a red or between a red and a white one.
Determine the number of the ways to fulfill his wish.
Example. For N = 3 result is following:
Input
N, the number of the stripes, 1 ≤ N ≤ 45.
Output
M, the number of the ways to decorate the shop-window.
Sample Input
3
4
思路:
一开始想自己写规律的,但是规律题我几乎都不能用手画出来,所以想了一会儿,还是暴力吧,因为数据不大。
找规律代码:
#include<iostream>#include<algorithm>#include<cstring>#include<string>#include<cstdio>#include<vector>using namespace std;#define T 10005#define inf 0x3f3f3f3f#define lson (rt<<1)#define rson (rt<<1|1)typedef long long ll;int f,cnt,v[100];void dfs(int c){if(c==f){cnt++;return;}for(int i=0;i<3;++i){if((c==0||c==f-1)&&i==1)continue;if(c==0)v[c] = i;else if(v[c-1]==i||(c>0&&c<f&&i==1&&v[c-1]==v[c+1])){continue;}v[c]=i;dfs(c+1);}}int main(){#ifdef zscfreopen("input.txt","r",stdin);#endifint n,i,j,k,t;f = 3;for(f=1;f<=45;++f){memset(v,-1,sizeof(v));cnt = 0;dfs(0);printf("%d\n",cnt);}return 0;}
AC代码:
#include<iostream>#include<algorithm>#include<cstring>#include<string>#include<cstdio>#include<vector>using namespace std;#define T 10005#define inf 0x3f3f3f3f#define lson (rt<<1)#define rson (rt<<1|1)typedef long long ll;int main(){#ifdef zscfreopen("input.txt","r",stdin);#endifint i,j,k,n;ll v[100];v[1] = 2,v[2] = 2;for(i=3;i<=45;++i){v[i] = v[i-1]+v[i-2];}while(~scanf("%d",&n)){printf("%lld\n",v[n]);}return 0;}
0 0
- URAL 1225-Flags(规律递推)
- URAL 1225(Flags)简单递推
- Ural 1225 Flags(DP)
- URAL 1225 递推
- ural 1225 Flags
- Ural 1225 Flags
- URAL-1225 Flags
- URAL 1225Flags dp练习
- URAL 1225. Flags (dp)
- Flags-Ural1225简单递推
- URAL 递推
- URAL 1225 Flags (DP动态规划)
- hdu6129Just do it(递推规律)
- 找规律 递推
- 递归 递推 规律
- URAL 1224. Spiral (规律)
- URAL 1017. Staircases(递推)
- Ural 1309 Dispute (递推)
- TreeSet根据一个字段排序
- opencv3中ORB算法描述与匹配
- 九阴白骨爪
- opencv3中SIFT配合暴力匹配进行关键点描述和提取
- MySql绿色版配置及使用详解
- URAL 1225-Flags(规律递推)
- jQuery 小技巧
- 苹果推送--APNS远程推送证书的申请和制作——详细解析
- 差分进化算法(Differential Evolution)
- opencv3中SURF特征点检测
- Big Num的具体实现和思路
- 1004-递推
- 关于ios审核被踢回的问题分析
- opencv3中SURF特征点检测-两幅图像进行比较