zoukankan      html  css  js  c++  java
  • CF460 A. Vasya and Socks

    A. Vasya and Socks
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Vasya has n pairs of socks. In the morning of each day Vasya has to put on a pair of socks before he goes to school. When he comes home in the evening, Vasya takes off the used socks and throws them away. Every m-th day (at days with numbers m, 2m, 3m, ...) mom buys a pair of socks to Vasya. She does it late in the evening, so that Vasya cannot put on a new pair of socks before the next day. How many consecutive days pass until Vasya runs out of socks?

    Input

    The single line contains two integers n and m (1 ≤ n ≤ 100; 2 ≤ m ≤ 100), separated by a space.

    Output

    Print a single integer — the answer to the problem.

    Sample test(s)
    input
    2 2
    output
    3
    input
    9 3
    output
    13
    Note

    In the first sample Vasya spends the first two days wearing the socks that he had initially. Then on day three he puts on the socks that were bought on day two.

    In the second sample Vasya spends the first nine days wearing the socks that he had initially. Then he spends three days wearing the socks that were bought on the third, sixth and ninth days. Than he spends another day wearing the socks that were bought on the twelfth day.

    这道题真心不难,T T,没想全。。。没事,学到东西就好

    我的想法

     1 #include <iostream>
     2 #include <cstdio>
     3 using namespace std;
     4 ///自己的想法那么复杂,好吧,想法其实也可以,当时没好好想完全
     5 ///n > m没问题,而 n < m 没考虑 T-T
     6 int main()
     7 {
     8     int n, m;
     9     while(cin >> n >> m)
    10     {
    11         int ans = 0;
    12 
    13         do{
    14             if(n >= m)
    15             {
    16                 ans += m;
    17                 n = n - m + 1;
    18             }
    19             else
    20             {
    21                 ans = n;
    22                 n = 0;
    23             }
    24         }while(n >= m);
    25         ans += n;
    26         cout << ans << endl;
    27     }
    28     return 0;
    29 }
    View Code

    参考,纯正模拟

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <iostream>
     4 #include <algorithm>
     5 
     6 using namespace std;
     7 
     8 int main()
     9 {
    10     int n, m, i;
    11     cin >> n >> m;
    12     for(i = 1; n > 0; i++)
    13     {
    14         n--;
    15         n += (i%m == 0) ? 1 : 0;
    16     }
    17     //这种思想是完全模拟袜子的使用过程,应该就是这样的
    18     i--;
    19     cout << i << endl;
    20     return 0;
    21 }
    View Code
  • 相关阅读:
    【转载】ASP.NET MVC中Controller与View之间的数据传递总结
    [转载]ASP.NET MVC 2配置使用CKEditor编辑器
    一步一步学NUnit(1)
    js关闭窗口弹出对话框
    [转载]将ASP.NET MVC 2.0 部署在IIS6和IIS7上的教程
    [转载] HTTP MIME
    【转载】用ckeditor分页符结合正则表达式给文章分页
    ASP.NET MVC2中返回Json异常的解决办法
    CKEditor
    [转载].net下的生成静态页面并分页 .
  • 原文地址:https://www.cnblogs.com/ya-cpp/p/4340330.html
Copyright © 2011-2022 走看看