• POJ 3994:Probability One


    Probability One
    Time Limit: 1000MS   Memory Limit: 65536K
    Total Submissions: 1674   Accepted: 1151

    Description

    Number guessing is a popular game between elementary-school kids. Teachers encourage pupils to play the game as it enhances their arithmetic skills, logical thinking, and following-up simple procedures. We think that, most probably, you too will master in few minutes. Here’s one example of how you too can play this game: Ask a friend to think of a number, let’s call it n0. Then: 

    1. Ask your friend to compute n1 = 3 * n0 and to tell you if n1 is even or odd.
    2. If n1 is even, ask your friend to compute n2 = n1/2. If, otherwise, n1 was odd then let your friend compute n2 = (n1 + 1)/2.
    3. Now ask your friend to calculate n3 = 3 * n2.
    4. Ask your friend to tell tell you the result of n4 = n3/9. (n4 is the quotient of the division operation. In computer lingo, ’/’ is the integer-division operator.)
    5. Now you can simply reveal the original number by calculating n0 = 2 * n4 if n1 was even, or n0 = 2 * n4 + 1 otherwise.

    Here’s an example that you can follow: If n0 = 37, then n1 = 111 which is odd. Now we can calculate n2 = 56, n3 = 168, and n4 = 18, which is what your friend will tell you. Doing the calculation 2 * n4 + 1 = 37 reveals n0.

    Input

    Your program will be tested on one or more test cases. Each test case is made of a single positive number (0 < n0 < 1,000,000). 
    The last line of the input file has a single zero (which is not part of the test cases.)

    Output

    For each test case, print the following line: 
    k. B Q 
    Where k is the test case number (starting at one,) B is either ’even’ or ’odd’ (without the quotes) depending on your friend’s answer in step 1. Q is your friend’s answer to step 4.

    Sample Input

    37
    38
    0

    Sample Output

    1. odd 18
    2. even 19

    把整个过程换算完了就是把原数除以2。

    代码:

    #include <iostream>
    #include <algorithm>
    #include <cmath>
    #include <vector>
    #include <string>
    #include <cstring>
    using namespace std;
    
    int main()
    {
    	int num,i=1;
    	while(cin>>num)
    	{
    		if(num==0)
    			break;
    		cout<<i<<". ";
    		i++;
    		if(num%2)
    			cout<<"odd ";
    		else
    			cout<<"even ";
    		cout<<num/2<<endl;
    	}
    	return 0;
    }
    


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    百度mp3地址解密码
    VB 在EXE后附加信息
    截屏函数
    Base64和StrToByte
    The Android ION memory allocator, DMABUF is mentioned as well
    DDC EDID 介绍
    Memory management for graphic processors TTM的由来
    科普 写display driver的必看 How video card works [2D的四种主要操作]
    GEM vs TTM
    DMABUF 背景介绍文章 Sharing buffers between devices
  • 原文地址:https://www.cnblogs.com/lightspeedsmallson/p/4899549.html
Copyright © 2020-2023  润新知