acm数学(待续)
意图写出http://www.cnblogs.com/kuangbin/archive/2012/08/28/2661066.html这个东西的完善版。
1.置换,置换的运算
poj 2369 Permutations置换群中有一个定理:设T为一置换,e为单位置换,T^k=e,那么k的最小正整数解是T的拆分的所有循环长度的最小公倍数。
#include <cstdio>
;
? a : gcd(b, a % b);}
int lcm(int a,int b){return a / gcd(a, b) * b;}
int a[maxn];
int main()
{
int n;
scanf("%d", &n);
; i <= n; i++)
{
scanf("%d", &a[i]);
}
;
; i <= n; i++)
{
;
while(temp != i)
{
len++;
temp = a[temp];
}
ans = lcm(ans, len);
}
printf("%d\n", ans);
;
}
PE真的巨坑,每个blocks结束之后要加一个换行,样例输出是有问题的。
注意一下,这个地方,和上一道比较,是一个倒过来的,倒过来的能明白吗。
#include <cstdio>
#include <cstring>
+ ;
? a : gcd(b, a % b);}
int lcm(int a,int b){return a / gcd(a, b) * b;}
int n,k,x;
int a[maxn], round[maxn];
char s[maxn], ss[maxn];
int main()
{
while(~scanf("%d", &n) && n)
{
; i <= n; i++)
scanf("%d", &a[i]);
//找寻环节并记录。
; i <= n; i++)
{
;
do
{
temp = a[temp];
len++;
}while(temp != i);
round[i] = len;
}
while(~scanf("%d", &k) && k)
{
getchar();
gets(s+);
);
while(slen <= n)
{
s[++slen] = ' ';
}
s[n+] = '\0';
strcpy(ss+, s+);
; i <= n; i++)
{
int t = round[i] - k % round[i];
int temp = i;
while(t--)
{
temp = a[temp];
}
ss[i] = s[temp];
}
printf();
}
puts("");
}
;
}
acm数学(待续)的更多相关文章
- ACM数学知识体系
在盛情收到学弟邀请给他们整理ACM数学方面的知识体系,作为学长非常认真的弄了好久,希望各学弟不辜负学长厚爱!!!非常抱歉因为电脑全盘格式化好多word.PPT都丢失,我尽量具体地给大家找到各知识点学习 ...
- 1490 ACM 数学
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1490 题意: 给出n*n 的矩阵,选出不同行不同列的n个元素,并求和: 如果所有选法所产生的和相等,则输出 ...
- 2190 ACM 数学概率论的乘法和加法原则
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2190 思路:明显我们要寻找 边长为n和边长为n-1,n-2,n-3·····的规律,这样得出一个递推公式就 ...
- ACM数学
1.burnside定理,polya计数法 这个专题我单独写了个小结,大家可以简单参考一下:polya 计数法,burnside定理小结 2.置换,置换的运算 置换的概念还是比较好理解的,< ...
- acm数学(转)
这个东西先放在这吧.做过的以后会用#号标示出来 1.burnside定理,polya计数法 这个大家可以看brudildi的<组合数学>,那本书的这一章写的很详细也很容易理解.最好能 ...
- 2046 ACM 数学
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2046 思维:与之前有两道题目相似,n可以由n-1和n-2递推过来.f(n)=f(n-1)*1+f(n-2) ...
- 2160 母猪的故事 ACM 数学规律
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2160 中文题目,很简单,找规律就好. 自己画树状图找规律,开始想复杂了,找的规律:Fn=2*F(n-1)- ...
- ACM数学问题分类(汇总帖)
数论 组合数学 计算几何 博弈论 线性代数 高等数学 线性规划 概率统计
- ACM 数学
欧几里得辗转相除法求最大公约数 int gcd(int a,int b) { ) return a; else return gcd(b,a%b); } 求组合数 int C(int n ,int m ...
随机推荐
- SNMP Message Format - SNMP Tutorial
30.10 SNMP Message Format Unlike most TCP/IP protocols, SNMP messages do not have fixed fields. Inst ...
- CSS3学习(圆角、图片、阴影、背景、渐变、文本、字体、2D、3D、过渡等)
matrix CSS3 1. 圆角 border-radius:边框圆角的圆角半径 四个值:第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角. 三个值:第一个值为左上角, 第二 ...
- [Machine Learning & Algorithm] 随机森林(Random Forest)
1 什么是随机森林? 作为新兴起的.高度灵活的一种机器学习算法,随机森林(Random Forest,简称RF)拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来 ...
- 【bzoj2318】Spoj4060 game with probability Problem
题目描述 Alice和Bob在玩一个游戏.有n个石子在这里,Alice和Bob轮流投掷硬币,如果正面朝上,则从n个石子中取出一个石子,否则不做任何事.取到最后一颗石子的人胜利.Alice在投掷硬币时有 ...
- 最短JavaScript判断是否为IE6、IE的方法
常用的 JavaScript 检测浏览器为 IE 是哪个版本的代码,包括是否是最人极端厌恶的 ie6 识别与检测. var isIE=!!window.ActiveXObject; var isIE6 ...
- PHP图像裁剪为任意大小的图像,图像不变形,不留下空白
<?php /** * 说明:函数功能是把一个图像裁剪为任意大小的图像,图像不变形 * 参数说明:输入 需要处理图片的 文件名,生成新图片的保存文件名,生成新图片的宽,生成新图片的高 */ fu ...
- Spring中集合类型属性注入
我们都知道如何去注入普通属性的值,非常简单,那么我们如何去注入开发中常见的集合类型的属性了,别急,往下看. 这里将介绍如何给Map list set Array Properties 这些属性注入值. ...
- 【Android开发实践】android.view.InflateException: Binary XML file line #12: Error inflating class fragment问题解决
一般出现的原因是fragment引入的包错了,应该是import android.app.ListFragment;而不是import android.support.v4.app.ListFragm ...
- CSS实现多个Div等高,类似表格布局
<%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%> <% ...
- 1.reset.css的设置
/* reset css */ *, ::before, ::after{ /*选择所有的标签 */ margin: 0; padding: 0; /*清除移动端默认的 点击高亮效果*/ -webki ...