Submission #409106


Source Code Expand

(defpackage king-collection
  (:use COMMON-LISP)
  (:export king-collection4))

(in-package :king-collection)

(declaim (inline from-string-to-number))
(defun from-string-to-number ()
  (declare (optimize (speed 3) (safety 0) (debug 0)))
  (let ((ss (concatenate 'vector (read-line)))
	(oo '())
	(ee '()))
    (loop for i from 0 to (- (array-dimension ss 0) 1) collect
	 (if (not (eq #\  (aref ss i)))
	     (setf oo (cons (aref ss i) oo))
	     (progn
	       (setf ee (cons (concatenate 'string (reverse oo)) ee))
	       (setf oo nil))))
    (setf ee (cons (concatenate 'string (reverse oo)) ee))
    (setf oo nil)
    (setf ee (reverse ee))
    (mapcar (lambda (x) (parse-integer x :junk-allowed t)) ee)))

(declaim (inline king-collection4))
(defun king-collection4 ()
  (declare (optimize (speed 3) (debug 0) (safety 0)))
  (let* ((r-c-k (from-string-to-number))
	 (r (nth 0 r-c-k))
	 (c (nth 1 r-c-k))
	 (k (nth 2 r-c-k))
	 (n (read))
	 (r-r (make-array '(100001)))
	 (c-c (make-array '(100001)))
	 (r-r-r (make-array '(100001)))
	 (c-c-c (make-array '(100001)))
	 (result 0)
	 (vr (make-array 0
			 :fill-pointer 0
			 :adjustable t))
	 (vc (make-array 0
			 :fill-pointer 0
			 :adjustable t)))
    
    (loop for i from 0 to (- n 1) by 1 collect
	 (let ((a (read)) (b (read)))
	   (decf a)
	   (decf b)
	   (incf (svref r-r a))
	   (incf (svref c-c b))
	   (vector-push-extend a vr)
	   (vector-push-extend b vc)))
    
    (loop for i from 0 to (- c 1) by 1 collect
	 (incf (svref c-c-c (svref c-c i))))
    
    (loop for i from 0 to (- r 1 ) by 1 collect
	 (incf (svref r-r-r (svref r-r i))))
    
    (loop for i from 0 to k by 1 collect
	 (setf result (+ result (* (svref r-r-r i) (svref c-c-c (- k i))))))
    
    (loop for i from 0 to (- (length vr) 1) by 1 collect
	 (let* ((rr (svref r-r (aref vr i)))
		(cc (svref c-c (aref vc i)))
		(sum (+ rr cc)))
	   (if (= sum k)
	       (decf result)
	       (if (= sum (+ k 1))
		   (incf result)))))
    
    (format t "~a~%" result)))

(king-collection4)

Submission Info

Submission Time
Task C - 収集王
User haruto0kitune
Language Common Lisp (SBCL 1.0.55.0)
Score 100
Code Size 2092 Byte
Status AC
Exec Time 1626 ms
Memory 99896 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 3
AC × 18
AC × 33
Set Name Test Cases
Sample subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt
Subtask1 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt
Subtask2 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt
Case Name Status Exec Time Memory
subtask0-sample01.txt AC 1626 ms 67920 KB
subtask0-sample02.txt AC 685 ms 67844 KB
subtask0-sample03.txt AC 678 ms 67936 KB
subtask1-01.txt AC 679 ms 67924 KB
subtask1-02.txt AC 678 ms 67924 KB
subtask1-03.txt AC 678 ms 67924 KB
subtask1-04.txt AC 690 ms 67892 KB
subtask1-05.txt AC 693 ms 67924 KB
subtask1-06.txt AC 690 ms 67888 KB
subtask1-07.txt AC 692 ms 68024 KB
subtask1-08.txt AC 682 ms 67980 KB
subtask1-09.txt AC 692 ms 68036 KB
subtask1-10.txt AC 685 ms 68052 KB
subtask1-11.txt AC 670 ms 68064 KB
subtask1-12.txt AC 673 ms 67980 KB
subtask1-13.txt AC 669 ms 67928 KB
subtask1-14.txt AC 669 ms 67976 KB
subtask1-15.txt AC 669 ms 67928 KB
subtask2-01.txt AC 677 ms 70100 KB
subtask2-02.txt AC 692 ms 74452 KB
subtask2-03.txt AC 1063 ms 91920 KB
subtask2-04.txt AC 1397 ms 98784 KB
subtask2-05.txt AC 1454 ms 99088 KB
subtask2-06.txt AC 1561 ms 99768 KB
subtask2-07.txt AC 1457 ms 98248 KB
subtask2-08.txt AC 1557 ms 99800 KB
subtask2-09.txt AC 1546 ms 99896 KB
subtask2-10.txt AC 1578 ms 99836 KB
subtask2-11.txt AC 1577 ms 99832 KB
subtask2-12.txt AC 1583 ms 99720 KB
subtask2-13.txt AC 1590 ms 99792 KB
subtask2-14.txt AC 1545 ms 99772 KB
subtask2-15.txt AC 1546 ms 99800 KB