XidianOJ 1035 数独 && 1053 正数负数 && 1042 另一个简单的游戏

三道水题。。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
int main(){
    while (scanf("%d",&n) != EOF){
        if (n > 0){
            printf("yes\n");
        }
        else if (n < 0){
            printf("no\n");
        }
        else printf("light\n");
    }
    return 0;
} 
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

#define SIZE 9

int table[10][10];
bool JudgeCube(int x,int y){
    int incx[10] = {0,0,0,0,1,1,1,2,2,2};
    int incy[10] = {0,0,1,2,0,1,2,0,1,2};

    int i,j;
    for (i=1;i<=9;i++){
        int appear[10] = {0};
        int nowx = x + incx[i];
        int nowy = y + incy[i];
        if (appear[table[nowx][nowy]]) {
            return true;;
        }
        else appear[table[nowx][nowy]];
    }

    return false;

}

int main(){
    int time,T;
    scanf("%d",&T);
    for (time=1;time<=T;time++){
        int i,j;
        int ok = 1;

        for (i=1;i<=SIZE;i++){
            for (j=1;j<=SIZE;j++){
                scanf("%d",&table[i][j]);
            }
        }
        for (i=1;i<=SIZE;i++){
            int appear[10] = {0};
            for (j=1;j<=SIZE;j++){
                if (table[i][j] > 9 || table[i][j] < 1) {
                    ok = 0;
                    goto here;
                }
                if (appear[table[i][j]]) {
                    ok = 0;
                    goto here;
                }
                else appear[table[i][j]] = 1;
            }
        }
        for (i=1;i<=SIZE;i++){
            int appear[10] = {0};
            for (j=1;j<=SIZE;j++){
                if (appear[table[j][i]]) {
                    ok = 0;
                    goto here;
                }
                else appear[table[j][i]] = 1;
            }
        }

        if (JudgeCube(1,1) || JudgeCube(1,4) || JudgeCube(1,7) ||
            JudgeCube(4,1) || JudgeCube(4,4) || JudgeCube(4,7) ||
            JudgeCube(7,1) || JudgeCube(7,4) || JudgeCube(7,7))
            ok = 0;

        here:
        if (ok) {
            printf("yes\n");
        }
        else printf("no\n");
    }
    return 0;

}
#include <cstdio>
#include <iostream>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <queue>
#include <vector>
using namespace std;

priority_queue<double,vector<double>,greater<double> > q;
int main(){
    int time,T;
    scanf("%d",&T);
    for (time=1;time<=T;time++){
        int n;
        scanf("%d",&n);
        int i,j;
        while (!q.empty()) {
            q.pop();
        }

        for (i=0;i<n;i++){
            double element;
            scanf("%lf",&element);
            q.push(element);
        }
        while (!q.empty()) {
            double min1 = q.top();
            q.pop();
            double min2 = q.top();
            q.pop();
            double res = (min1+min2) / 2;
            if (q.empty()) {
                res *= 100;
                res += 0.5;
                res = floor(res);
                res /= 100;
                printf("%.2lf\n",res);
                break;
            }
            q.push(res);
        }

    }
    return 0;
}
时间: 2024-10-12 09:37:21

XidianOJ 1035 数独 && 1053 正数负数 && 1042 另一个简单的游戏的相关文章

正数负数转换

正数 -- > 负数 1>取反 2>+1 12 源码 0000 1100 1111 0011 取反 1111 0100 +1 负数-->正数 1>-1 2>取反 -3 1111 1101 源码 1111 1100 -1 0000 0011 取反 ------- 3

C#设置textBox只能输入数字(正数,负数,小数)简单实现

/* *设置textBox只能输入数字(正数,负数,小数) */ public static bool NumberDotTextbox_KeyPress(object sender, KeyPressEventArgs e) { //允许输入数字.小数点.删除键和负号 if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != (char)('.') && e

js数组中的常用方法总结

栈方法(后进先出) ArrayObj.push()方法 ArrayObj.pop()方法 ArrayObj.push():就是向数组末尾添加新的元素,返回的是数组新的长度.ArrayObj.pop():就是向数组中删除数组最后一个元素并且返回该元素.如果数组为空就返回undefined. 队列方法(先进先出) ArrayObj.shift() ArrayObj.unshift() ArrayObj.shift():方法用于把数组中的第一个元素删除,并返回第一个元素的值.如果数组是空的,则shif

关于js中数组方法总结

数组在笔试中经常会出现的面试题,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习,整理了关于数组的操作方法 数组创建 JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20); // 创建一个包含20项的数组 var arr3 = new Array("lily","lucy","To

C#中的函数式编程

在函数式编程中,可以把函数看作数据.函数也可以作为参数,函数还可以返回函数.比如,LINQ就是基于函数式编程的. 两个例子引出函数式编程 语句式编程可能这样写: string result; if(value > 0) { result = "正数"; } else { result = "负数"; } 而使用函数式表达式,可以简化为: var result = value > 0 "正数":"负数"; 再来看一个

理解javascript中的Array类型

引子: 从事前端开发有段时间了,个人观点:想在前端开发这条路上走的更远,不仅要学好HTML&HTML5.CSS&CSS3,最重要的就是要学好javascript了.所以打好javascript基础是非常有必要,今天就平时所用的javascript中的数组Array类型做个整理.本人前端初学者,如果以下内容对您有帮助的话本人也非常欣慰,如果写的不好,请提出您的见解,共享下您在学习js中的宝贵经验,谢谢! Array类型是js中非常常用的数据类型了,这里就不脑补了,至于什么是数组类型,请绕道w

数组大全

数组创建 JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数: 1 2 3 var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20); // 创建一个包含20项的数组 var arr3 = new Array("lily","lucy","Tom"); // 创建一个包含3个字符串的数组 创建数组的第二种基本方式是使用数组字面量表示法: 1 2 3 var ar

js数组排序 reverse()和sort()方法的使用

WEB前端|js数组排序reverse()和sort()方法的使用,数组中已经存在两个可以直接用来重排序的方法:reverse()和sort(). reverse()方法会对反转数组项的顺序. var values = [1, 2, 3, 4, 5]; values.reverse(); alert(values);  //5,4,3,2,1 这里数组的初始值及顺序是1.2.3.4.5.而调用数组的reverse()方法后,其值的顺序变成了5.4.3.2.1.这个方法的作用相当只管明了,但不够灵

js中数组的方法

数组在笔试中经常会出现的面试题,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习,下面小编给大家整理了关于数组的操作方法,一起看看吧. 数组创建: 1.JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20); // 创建一个包含20项的数组 var arr3 = new Array("lily", "l