codeforces 460A Vasya and Socks 解题报告
题目链接:http://codeforces.com/problemset/problem/460/A
题目意思:有一个人有 n 对袜子,每天早上会穿一对,然后当天的晚上就会扔掉,不过他会在 m 的倍数所代表的天数(1m,2m,3m...)会购入一双袜子,不过是在那一天的晚上买。问他拥有的袜子够他穿几天。
首先他是晚上扔掉,早上穿,晚上买这些信息是无关紧要的,好像不影响解题,不要太纠结......这题最关键的是,他穿完 他本来购入的 n 对袜子后,又再购入的情况,因为假设他在前 n 日(也就是m,2m,3m,....。这些 m 的倍数的天数不超过n)购入 bought对袜子,那么接下来的 n+1天他就可以穿这 bought对袜子了,天数依次为n+1, n+2, ...,n+1+bought。但是,有一个情况要考虑到,就是这些天数中有一些可能又是 m 的倍数,也就是又要在这些倍数里买一对袜子。
可以这样处理,不断模拟 n+1天之后的情况,每一天bought的数量减一(代表当日穿这双袜子,顺便当晚扔掉),天数就不断累加啦,如果天数是 m 的倍数,bought数量加一,退出循环的条件就是 bought数变为0.还犯了一个比较低级的错误,循环初始时的值没有搞清楚,就是n+1嘛,想太多了....
自从被人hack了之后,就永无翻身之地啦,接下来的日子尽量多做virtual,做其他oj题之后,发现做回cf的题目有点适应不了= =,呜呜呜~~~继续努力!
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std; int main()
{
int n, m, tmp;
while (scanf("%d%d", &n, &m) != EOF)
{
int bought = ;
for (int i = ; i * m <= n; i++)
bought++;
tmp = bought;
for (int i = n+; bought; i++) // 注意是从n+1天开始
{
bought--;
if (i % m == )
{
bought++; // 模拟袜子被用数量
tmp++; // 存储袜子在有的情况下累积的天数
}
}
printf("%d\n", tmp + n);
}
return ;
}
听说还有一个公式算的: n + [(n-1)/(m-1)]的下取整
codeforces 460A Vasya and Socks 解题报告的更多相关文章
- codeforces 493B.Vasya and Wrestling 解题报告
题目链接:http://codeforces.com/problemset/problem/493/B 题目意思:给出 n 个 techniques,每个 technique 的值为 ai. ai & ...
- codeforces 493A. Vasya and Football 解题报告
题目链接:http://codeforces.com/contest/493/problem/A 题目意思:给出两个字符串,分别代表 home 和 away.然后有 t 个player,每个playe ...
- Codeforces Educational Round 92 赛后解题报告(A-G)
Codeforces Educational Round 92 赛后解题报告 惨 huayucaiji 惨 A. LCM Problem 赛前:A题嘛,总归简单的咯 赛后:A题这种**题居然想了20m ...
- Codeforces Round #262 (Div. 2)460A. Vasya and Socks(简单数学题)
题目链接:http://codeforces.com/contest/460/problem/A A. Vasya and Socks time limit per test 1 second mem ...
- codeforces 476C.Dreamoon and Sums 解题报告
题目链接:http://codeforces.com/problemset/problem/476/C 题目意思:给出两个数:a 和 b,要求算出 (x/b) / (x%b) == k,其中 k 的取 ...
- Codeforces Round #262 (Div. 2)解题报告
详见:http://robotcator.logdown.com/posts/221514-codeforces-round-262-div-2 1:A. Vasya and Socks http ...
- Codeforces Round #382 (Div. 2) 解题报告
CF一如既往在深夜举行,我也一如既往在周三上午的C++课上进行了virtual participation.这次div2的题目除了E题都水的一塌糊涂,参赛时的E题最后也没有几个参赛者AC,排名又成为了 ...
- codeforces 507B. Amr and Pins 解题报告
题目链接:http://codeforces.com/problemset/problem/507/B 题目意思:给出圆的半径,以及圆心坐标和最终圆心要到达的坐标位置.问最少步数是多少.移动见下图.( ...
- codeforces 500B.New Year Permutation 解题报告
题目链接:http://codeforces.com/problemset/problem/500/B 题目意思:给出一个含有 n 个数的排列:p1, p2, ..., pn-1, pn.紧接着是一个 ...
随机推荐
- MongoDB_副本集集群模式
主从模式: 在10.3.13.213 主节点, 10.3.2.33 从节点.mongodb 安装路径均为:/usr/local/server/mongodb 参考文章:http://www.lance ...
- VM虚拟机
VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式. 1 ...
- Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第104篇原创 文章工程:* JDK 1.8* M ...
- GRYZY- #10. 财富
财富(treasure) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK有n个小伙伴.每个小伙伴有一个身高hi. 这个游戏是这样的,LYK生活的环境是以身高 ...
- sprak pom
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven ...
- solr 简要笔记
创建搜索1 创建directory 2.分词器 analyzer 3indexwriter writer dic an 4.document doc.add writer.adddocument(do ...
- Spring自带mock测试Controller
原文:http://blog.csdn.net/yin_jw/article/details/24726941 准备SpringMVC环境 注意:使用mock测试需要引入spring-test包 Ba ...
- reason: '*** setObjectForKey: object cannot be nil (key: 1)'-crash!
[self.imageDownloadsInProgress setObject:iconDownloader forKey:[NSNumber numberWithInteger:tag]]; 字典 ...
- Atlassian Confluence安装
前言 Confluence与Jira 由于线上jira和confluence之前互相关联,confluence的登录用户全部关联自jira的用户,confluence安装时会提示是否关联jira,由于 ...
- 11892 - ENimEN(博弈)
UVA 11892 - ENimEN 题目链接 题意:给定n堆石头.两人轮流取,每次仅仅能取1堆的1到多个.假设上一个人取了一堆没取完.那么下一个人必须继续取这堆.取到最后一个石头的赢,问谁赢 思路: ...