hdu 1061 Rightmost Digit

 

    和上一题一样的,只是最右边的数。找规律,20个一循环

 

import java.util.Scanner;

public class Main
{
	final static int a[]={0,1,4,7,6,5,6,3,6,9,0,1,6,3,6,5,6,7,4,9};
	static Scanner cin=new Scanner(System.in);
	static int n,T;

	public static void main(String[] args)
	{
		T=cin.nextInt();
		while(T--!=0)
		{
		   n=cin.nextInt();
		   System.out.println(a[n%20]);
		}

	}
}

 

时间: 2024-11-16 02:46:41

hdu 1061 Rightmost Digit的相关文章

HDOJ 1061 Rightmost Digit(循环问题)

Problem Description Given a positive integer N, you should output the most right digit of N^N. Input The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow. Each

hdu 1060 Leftmost Digit

Leftmost Digit          题意很简单,求n^n最左边的数字,因为n=m*10^x 所以lg(n)=lg(m)+x;        计算的时候注意最大会超出int,要用long        最近要练练java了 import java.util.Scanner; public class Main { public static void main(String args[]) { long n,T; double ans; Scanner cin=new Scanner(

hdu 1066 Last non-zero Digit in N!

        这个方法是参考http://blog.csdn.net/fengyu0556/article/details/5615129 这里的.       证明和推到都在那里面,只是那边最后的代码没有注释和其所说写的又有些出入,所以就贴上我的代码,好理解写   /* author:jxy lang:C/C++ university:China,Xidian University **If you need to reprint,please indicate the source** *

HDU 1546 Idiomatic Phrases Game

链接: http://acm.hdu.edu.cn/showproblem.php?pid=1546 题目: Idiomatic Phrases Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 969    Accepted Submission(s): 300 Problem Description Tom is playi

hdu 3117 Fibonacci Numbers

点击此处即可传送到hdu 3117 **Fibonacci Numbers** Problem Description The Fibonacci sequence is the sequence of numbers such that every element is equal to the sum of the two previous elements, except for the first two elements f0 and f1 which are respectively

hdu 1527

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1527 hint:威佐夫博弈 基本类似于模板 #include <iostream> #include <cmath> #include <cstdio> using namespace std; const double q = (1 + sqrt(5.0)) / 2.0; // 黄金分割数 int Wythoff(int a, int b) { if (a > b)

hdu 2551 竹青遍野

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2551 hint:就是读懂题就行了 #include <iostream> #include <cstdio> using namespace std; typedef long long LL; LL data[1005]; int main() { data[0]=0; for(int i=1; i<1005; i++) data[i]+=data[i-1]+i*i*i; LL

hdu 2054 A == B?

http://acm.hdu.edu.cn/showproblem.php?pid=2054 此题巨坑,刚开始我以为是简单的水题,就用strcmp过, but错了,后来经过我苦思冥想,结果还有几组数据 0.0 和 0,1.000和1.0 , 但是我不太确定前面的0是不是有作用我还是写了,但是有人过的时候,前面的0没考虑比如: 002和2可能是相等的,也可能是不想等的所以不用判断,只能说明hdu数据不是很强啊,嘿嘿 代码如下: #include <iostream> #include <c

hdu 4430 Yukari&#039;s Birthday

点击打开链接hdu 4430 思路:枚举r+二分k 分析: 1 题目要求的是找到一组最小的r*k,如果r*k相同那么就找r最小的. 2 很明显k>=2,根据n <= 10^12,那么可以知道r的最大值r<50,所以只要枚举枚举r的值,然后二分k的大小找到所有的解,存入一个结构体里面,然后在对结构体排序,那么这样就可以得到最后的ans 3 注意题目说了中心点最多一个蜡烛,所以写二分的时候应该注意判断的条件: 4 还有可能计算得到结果超了long long直接变成负数所以应该对或则个进行判断