
----------FOJ----------
xmzyt1996
这个作者很懒,什么都没留下…
展开
-
组队选拔赛01 ---- misa
Problem Description A nice part of the Roman Catholic Mass is the rite of peace when people shake hands with their neighbours and say “peace be with you”. Mirko has found a way to turn this ritual in原创 2015-07-19 00:20:00 · 420 阅读 · 0 评论 -
暑假选拔赛02 ---- 可行方案
Problem Description 给两个整数n,m,求有多少种方案,使 (A1 & A2)|(A2 &A3)|(A3 &A4)|….|(An-1 & An) = 0 方案数对m取模。其中Ai的取值只有0或者1两种。Input 多组数据 每组数据一行,两个整数n和m 1<=n<=10^5 1<=m<=10^9Output 每组数据输出一行ansSa原创 2015-07-14 20:37:17 · 260 阅读 · 0 评论 -
暑假选拔赛01 ---- 数字问题
Problem Description 大家对进制一定很清楚,如果一个数字是A进制表示,则它的每一位数字小于A。现在定义一种奇异数字,假设它是A进制,它的每一位与它左边、右边的数字都不是相邻。现在问题是,求解B位A进制的所有整数中奇异数字的个数。比如A=3,B=2,奇异数字就有11 20 22 三个,所以结果是3.Input 输入两个正整数A(1<=A<=100)和B(1<=B<=100)原创 2015-07-14 20:07:47 · 278 阅读 · 0 评论 -
暑假选拔赛01 ---- Prime
Problem Description 按从小到大顺序输出[1,6000000]内的所有质数,每个数一行。Input 没有输入。Output 如上。 (样例只是给出了答案的头几行)Sample InputSample Output 2 3 5 ……解题思路参考 素数筛法.参考代码#include <stdio.h>#include <string.h>c原创 2015-07-14 17:49:05 · 278 阅读 · 0 评论 -
暑假选拔赛02 ---- an easy problem
Problem Description 一个N*M的矩阵A.你要获得一个B矩阵. B[i][j] = min { A[x][y] | y >= j && x >= i+j-y}Input 第一行N和M.表示N行M列.(1<=N,M<=1000) 接下来N行每行M个数字.数字为小于10^8的正整数. 第i行第j列的数字用A[i][j] 表示。Output 输出B矩阵。原创 2015-07-14 20:42:00 · 259 阅读 · 0 评论 -
暑假选拔赛01 ---- Chufa
Problem Description 给出两个正整数m、n,输出m/n的精确值。 如果m/n是整数或有限小数,那么直接输出它的值。 如果m/n是无限小数,那么输出小数点后到第一个最小循环节为止,并用”()”把最小循环节括起来。 比如,4/2=2,输出”2”;1/5=0.2,输出”0.2”;5/6=0.833333…,输出”0.8(3)”。Input 输入第一行为一个正整原创 2015-07-14 17:44:45 · 292 阅读 · 0 评论 -
暑假选拔赛02 ---- Ysequence
Problem Description 将所有的正整数从小到大列出,然后把其中的完全平方数都去掉,就得到了著名的Yellowstar数列。它的前几项如下: 2,3,5,6,7,8,10…… 给出正整数n,请你输出Yellowstar数列的第n项(2算是第1项).Input 第一行一个正整数T,表示有T组测试数据。 接下来T行每行为一组数据。每行一个正整数n,含义如上。原创 2015-07-14 20:30:56 · 332 阅读 · 0 评论 -
暑假选拔赛01 ---- code
Problem Description Ytaaa使用一种特殊的编码方式来加密英文字串,即a->1,b->2,…,z->26 Ytaaa很快发现相同密文可解读为不同的原字串。ytaaa想知道,对于一个密文,共有多少种解读方式。如26可以解读为 bf或z。Input 输入包括多组数据,数据仅由数字组成。数字位数最大为1000000,输入数据保证合法。Output 输出每行一个数,原创 2015-07-14 20:17:35 · 291 阅读 · 0 评论 -
[FOJ 1889] 龟兔赛跑
题目描述龟兔赛跑解题思路参考代码#include <iostream>using namespace std;int main(){ int X; scanf("%d",&X); while (X--){ double t,k,u,v; scanf("%lf %lf %lf %lf ",&t,&k,&u,&v); doub原创 2015-07-26 17:12:33 · 424 阅读 · 0 评论 -
暑假选拔赛02 ---- money
Problem Description 在ytaaa的国度中,货币存在n种不相等的面额。在这种情况下,一些交易金额无法凑整,交易常常遇到问题。 Ytaaa国为了解决这个问题,出台了一部法令。即交易金额a如果无法用货币凑成,那么交易金额改变为b。b必须满足几个条件。 1. b<=a 2. b可用货币凑出。 3. b是所有满足1,2条件中最接近a的 现在ytaaa原创 2015-07-14 20:44:34 · 803 阅读 · 0 评论 -
暑假选拔赛02 ---- 最大乘积
Problem Description 给出正整数n和m,把n拆成m个非负整数之和,使得这m个数的乘积最大。输出乘积对1000000007取模的结果。Input 输入第一行为一个正整数T,表示有T组测试数据。 接下去T行,每行为一组数据。每行两个正整数n、m,含义如上。 n在32位signed int范围内,m<=100000,T<=100。Output 每组数据一行,输原创 2015-07-14 20:46:52 · 388 阅读 · 0 评论 -
组队选拔赛01 ---- trener
Problem Description Mirko has been moving up in the world of basketball, starting as a mere spectator, mastering snack salesmanship, finally reach the coveted position of the national team coach. He原创 2015-07-18 23:47:55 · 370 阅读 · 0 评论 -
组队选拔赛01 ---- volim
Problem Description Croatia’s national television programme is broadcasting an entertainment show titled “I Love Croatia”,modeled on the licensed format I love my country. In this show two teams of c原创 2015-07-19 00:09:28 · 342 阅读 · 0 评论 -
FOJ 1893 内存管理 //模拟
题目描述内存管理解题思路参考代码#include <iostream>#include <algorithm>#include <vector>#include <string>#include <cstring>#include <map>const int maxn = 110;using namespace std;struct Process{ int begin,s原创 2015-07-26 17:19:31 · 363 阅读 · 0 评论 -
FOJ 1402 猪的安家 // 中国剩余定理
题目描述Problem 1402 猪的安家解题思路中国剩余定理的模板题。。参考代码#include<iostream>using namespace std;typedef __int64 ll;const int maxn = 1010;ll a[maxn],b[maxn];ll extended_euclid(ll a, ll b, ll &x, ll &y) { ll d原创 2015-06-01 23:00:27 · 486 阅读 · 0 评论 -
FOJ 1063 三维扫描 // DFS
题目描述Problem 1063 三维扫描解题思路简单DFS参考代码#include <stdio.h>#include <string.h>#include <math.h>const int inf = 0x3f3f3f3f;const int maxn = 55;int map[maxn][maxn][maxn];int dir[6][3]={{1,0,0},{-1,0,0},{0原创 2015-06-01 22:49:48 · 409 阅读 · 0 评论 -
FOJ 1062 洗牌问题 // 找规律,模拟
题目描述Problem 1062 洗牌问题解题思路不难发现,只要a1又回到1,则其他牌也会回到原来的位置,因此只要考虑a1。 找下规律会发现,当a1<=n时,a1的下一个位置的编号是上一个的2倍,即a1*=2;当a1>n时,a1=((a1*=2)-2*n-1),最后记录a1回到1的次数即可。参考代码#include <stdio.h>int main(){ int n; whi原创 2015-06-01 22:59:16 · 388 阅读 · 0 评论 -
组队选拔赛01 ---- kusac
Problem DescriptionMirko has given up on the difficult coach job and switched to food tasting instead. Having skipped breakfast like a professional connoisseur, he is visiting a Croatian cured meat fes原创 2015-07-18 23:59:04 · 358 阅读 · 0 评论 -
组队选拔赛01 ---- slom
Problem Description Little Marin spent all his day generating test data for FOJ. He simply couldn’t make it work, so he had a nervous breakdown and can’t even see clearly anymore. Every time he blink原创 2015-07-19 00:30:06 · 416 阅读 · 0 评论 -
[FOJ 2123] 数字的孔数
题目描述数字的孔数解题思路参考代码#include <stdio.h>int map[] = {1,0,0,0,1,0,1,0,2,1};int main(){ int T; scanf("%d",&T); while (T--){ int n,cnt = 0; scanf("%d",&n); while(n){原创 2015-07-26 17:05:30 · 354 阅读 · 0 评论 -
[FOJ 2121] 神庙逃亡
题目描述神庙逃亡解题思路参考代码#include <stdio.h>int main(){ int n; scanf("%d",&n); while (n--){ int s,h,vx,vy,t; scanf("%d %d %d %d",&s,&h,&vx,&vy); t = s/vx; printf("%s原创 2015-07-26 17:03:09 · 945 阅读 · 0 评论 -
【FOJ 1371】 Election
题目描述Problem 1371 Election解题思路对于每个候选人进行投票,输出票数最多的那个人所在党。 可以用map对候选人和所在党进行映射,投票结果存在一个结构体里,再排序。参考代码#include <iostream>#include <cstdio>#include <algorithm>#include <vector>#include <cstring>#include原创 2015-04-09 15:42:45 · 350 阅读 · 0 评论 -
【FOJ 1605】 Enjoy celebration
题目描述Problem 1605 Enjoy celebration解题思路给定日期,计算离最近的校庆日还差几天。参考代码#include <stdio.h>int y1[2] = {298,299},y2[2] = {365,366}; //y1存校庆是当年的第几天int Yeap(int year);int Which(int y,int m,int d);int main(){原创 2015-04-09 15:54:43 · 352 阅读 · 0 评论 -
【FOJ 1303】 Calendar
题目描述Problem 1303 Calendar解题思路求从2000-1-1开始后的第n天的日期。 可以先把与日期处理的相关信息打表存好。参考代码#include <stdio.h>char D[][10]={"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};int year[2] =原创 2015-04-09 15:10:40 · 391 阅读 · 0 评论 -
【FOJ 1171】 Hard to Believe, but True!
题目描述Problem 1171 Hard to Believe, but True!解题思路给一个图灵等式a+b=c,其中a,b,c都要倒过来看,比如73+42=16 要看成37+24=61,然后判断倒过来的等式是否成立。 可以把a,b,c都存成字符串,再去除前导0,最后转换成数字再判断。(可以考虑用stdlib.h中的atoi函数)参考代码#include <stdio.h>#include原创 2015-04-09 15:02:42 · 490 阅读 · 0 评论 -
【FOJ 1164】 Average is not Fast Enough!
题目描述Problem 1164 Average is not Fast Enough!解题思路整个赛道总长为d,分为n段接力,计算跑完整个赛道的平均速度。 因为 小时 的输入可能为数字或者为“-”,可以考虑存成字符。 注意结果要四舍五入。参考代码#include <stdio.h>#include <math.h> int main(){ int n,num,i,m,s;原创 2015-04-09 14:38:12 · 354 阅读 · 0 评论 -
【FOJ 1350】 Very Simple Problem
题目描述Problem 1350 Very Simple Problem解题思路对于p个问题,有n个人做出难度评价。然后找出其中一个问题,它被半数以上的人认为是最简单的,且没有人认为是最难的。参考代码#include <cstdio>#include <iostream>#include <algorithm>const int maxn = 110;using namespace std;原创 2015-04-09 15:16:12 · 452 阅读 · 0 评论 -
【FOJ 1054】阅读顺序
题目描述Problem 1054 阅读顺序解题思路反转阅读顺序(从左到右变为从右到左)。 将字符串倒序输出即可。参考代码#include <stdio.h>#include <string.h>const int maxn = 210;int main(){ char s[maxn]; int n; scanf("%d",&n); getchar();原创 2015-04-01 23:41:18 · 480 阅读 · 3 评论 -
【FOJ 1055】赋值问题
题目描述Problem 1055 赋值问题解题思路一开始只有a有确定的值,在执行一些赋值操作后,输出哪些字母有确定的值. 注意如果a一开始被未知的字母赋值,最后一定是输出none.参考代码#include <stdio.h>#include <string.h>int main(){ int n,i; bool arr[128]; char s[5]; whi原创 2015-04-02 14:02:14 · 364 阅读 · 0 评论 -
【FOJ 1405】 做减法
题目描述Problem 1405 做减法解题思路给两个数字做差,如果结果超过3位,应从最低位起,按每三位加“,”。参考代码#include <stdio.h>#include <string.h>int main(){ __int64 a,b,c,v; char s[20]; while (~scanf("%I64d%I64d",&a,&b)){ mem原创 2015-04-09 15:48:28 · 511 阅读 · 0 评论 -
【FOJ 1360】 Run Length Encoding
题目描述Problem 1360 Run Length Encoding解题思路将一个字符串压缩表示。重复次数大于9次的要分开算,没有重复的连续序列开头和结尾要各输出个1,序列中的1要输出两个1。 AAAAAABCCCC 表示为 6A1B14C 12344 表示为 11123124 可以先不考虑题目的特殊压缩要求,先转换成普通压缩,再进行细节上的操作。参考代码#include <cstdio原创 2015-04-09 15:31:10 · 626 阅读 · 0 评论 -
【FOJ 1059】老师的苦恼
题目描述Problem 1059 老师的苦恼解题思路把所有大写字母转换成小写,其它字符不变。 可以用cctype中的tolower函数。参考代码#include <iostream> #include <string>#include <cctype>using namespace std;int main(){ string s; while (getline(cin,原创 2015-04-09 14:26:59 · 546 阅读 · 0 评论 -
[FOJ 1896] 神奇的魔法数
题目描述神奇的魔法数解题思路参考代码#include <stdio.h>#include <string.h>#include <math.h>typedef long long ll;int m, dp[15][10];void init(){ memset(dp,0,sizeof(dp)); for (int i = 0; i < 10; i++) dp[1][i原创 2015-07-26 17:20:15 · 379 阅读 · 0 评论 -
[FOJ 2122] 又见LKity
题目描述又见LKity解题思路参考代码#include <stdio.h> #include <string.h>#include <ctype.h>const int maxn = 50050;char str[maxn],s1[150],s2[150],temp[150];bool judge(char* s1,char* s2,int len){ int i; for原创 2015-07-26 17:04:14 · 285 阅读 · 0 评论 -
[FOJ 1891] 升降序列
题目描述升降序列解题思路参考代码#include <iostream>#include <algorithm>using namespace std;const int maxn = 50010;int ans[maxn],temp[maxn];int main(){ int T; scanf("%d",&T); while (T--){ int原创 2015-07-26 17:17:50 · 482 阅读 · 0 评论 -
[FOJ 1890] 竞技游戏
题目描述竞技游戏解题思路参考代码#include <iostream>#include <algorithm>#include <vector>using namespace std;int main(){ int T; scanf("%d",&T); while (T--){ int n,m,tmp,a,b; scanf("%d %原创 2015-07-26 17:14:32 · 615 阅读 · 0 评论 -
【FOJ 1169】 Fiber Network
题目描述Problem 1169 Fiber Network解题思路给一个有向图,每条边上注明某些公司可以通过,最后询问任意两点间连通的公司有哪些。 因为公司名称都是单个小写字母,所以可以用32位int的二进制来压缩状态。 同时,可以用floyd算法来传递闭包。参考代码#include<cstdio>#include<cstring>using namespace std;const in原创 2015-04-09 14:54:47 · 443 阅读 · 0 评论 -
【FOJ 1489】 密码
题目描述Problem 1489 密码解题思路每次都给定新的密码表,然后输出对密文进行加密后的明文。 注意大小写字母加密方式相同,且替换后大小写方式不变。参考代码#include <iostream> #include <string>#include <cctype>using namespace std;int main(){ string s,map; while原创 2015-04-09 15:58:01 · 550 阅读 · 0 评论 -
【FOJ 1106】Sum of Factorials
题目描述Problem 1106 Sum of Factorials解题思路判断一个数是否能写成 10以内的阶乘之和。 可以考虑从10!一直往下减,最后能全减完,则输出YES,注意特判0。 (事先把10以内的阶乘打表存好)参考代码#include <stdio.h>int main(){ int n,num[10] = {1,1,2,6,24,120,720,5040,40320,3原创 2015-04-09 14:31:30 · 492 阅读 · 0 评论 -
【FOJ 1008】Hay Points
题目描述Problem 1008 Hay Points解题思路给一些能力和其对应的值,然后在一段描述中根据出现的能力统计其最终的值为多少。 STL之map的应用。参考代码#include <iostream>#include <string>#include <map>using namespace std;map<string,int> HP;int main(){ int原创 2015-04-01 23:37:02 · 367 阅读 · 0 评论