Codefoces 432C Prime Swaps(数论+贪心)】的更多相关文章

版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u011328934/article/details/26094917 题目连接:Codefoces 432C Prime Swaps 题目大意:给出一个序列.长度为n,要求用5n以内的交换次数使得序列有序.而且交换的i,j两个位置的数时要满足,j−i+1为素数. 解题思路:a数组为相应的序列,b数组为相应的有序序列,p为相应数的位置.每次从有序序列最小的位置開始,该为必须放b[i]才对.所以p[b…
题目链接:http://codeforces.com/contest/432/problem/C 首先由题意分析出:这些数是从1到n且各不相同,所以最后结果肯定是第i位的数就是i. 采用这样一种贪心策略:从1到n枚举每一位.如果第i位不是i,那么就把i 从它所在的位置移动到第i 位,每次移动的距离要选取符合要求的最大的素数,那么由哥德巴赫猜想可以知道,最后肯定小于5次移动就移好了.每一位都这么移就行了.这过程中记录一下每次谁和谁交换位置就行了. 我把x[],y[]开成了maxn而导致了RE,改成…
Description You have an array a[1], a[2], ..., a[n], containing distinct integers from 1 to n. Your task is to sort this array in increasing order with the following operation (you may need to apply it multiple times): choose two indexes, i and j (1 …
题意:给定一个字符串,问你能不能通过重排,使得任意一个素数p <= 字符串长度n,并且 任意的 i <= 长度n/素数p,满足s[p] == s[p*i]. 析:很容易能够看出来,只要是某个素数的小于等于该素数的倍数都是一样的,然后如果他和其他素数也有倍数,那么这些位置也是一样的, 所以我们只要找到任意一个小于等于 n 的素数与该素数相乘都大于 n的,然后用把数目最少的字符种给它,然后剩下的给那些. 所以能够看出lcm(2, i) (i是素数) <= n的那么这些位置包括小于等于该素数的…
哥德巴赫猜想: 任一大于2的偶数,都可表示成两个素数之和. 任一大于5的整数都可写成三个质数之和. 贪心取尽可能大的素数..... C. Prime Swaps time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You have an array a[1], a[2], ..., a[n], containing distinc…
题目:http://www.tsinsen.com/A1504 A1504. Book(王迪) 时间限制:1.0s   内存限制:256.0MB   Special Judge 总提交次数:359   AC次数:97   平均分:43.76   将本题分享到:        查看未格式化的试题   提交   试题讨论 试题来源 2013中国国家集训队第二次作业 问题描述 Wayne喜欢看书,更喜欢买书. 某天Wayne在当当网上买书,买了很多很多书.Wayne有一个奇怪的癖好,就是第一本书的价格…
思路:从前往后想将1调整好,在调整2....这样平均每次有五次机会调整,并且有相当一部分可能都用不到五次,能够一试.ac 代码: #include<iostream> #include<cstdio> #include<cmath> #include<map> #include<queue> #include<cstring> #include<algorithm> using namespace std; const i…
Special Prime Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 738    Accepted Submission(s): 390 Problem Description Give you a prime number p, if you could find some natural number (0 is not in…
题目链接: C. Bear and Prime 100 time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output This is an interactive problem. In the output section below you will see the information about flushing the outpu…
10140 - Prime Distance 题目链接 题意:求[l,r]区间内近期和最远的素数对. 思路:素数打表,打到sqrt(Max)就可以,然后利用大的表去筛素数.因为[l, r]最多100W.所以能够去遍历一遍.找出答案. 注意1的情况,一開始没推断1,结果WA了 代码: #include <stdio.h> #include <string.h> #include <algorithm> using namespace std; #define INF 0x…