Submission #409109


Source Code Expand

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

(in-package :king-collection)

(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)))

(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 2013 Byte
Status AC
Exec Time 1552 ms
Memory 99928 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 556 ms 55352 KB
subtask0-sample02.txt AC 554 ms 55384 KB
subtask0-sample03.txt AC 557 ms 55356 KB
subtask1-01.txt AC 561 ms 55376 KB
subtask1-02.txt AC 556 ms 55300 KB
subtask1-03.txt AC 555 ms 55396 KB
subtask1-04.txt AC 557 ms 55384 KB
subtask1-05.txt AC 552 ms 55380 KB
subtask1-06.txt AC 560 ms 55388 KB
subtask1-07.txt AC 556 ms 55436 KB
subtask1-08.txt AC 550 ms 55436 KB
subtask1-09.txt AC 834 ms 55436 KB
subtask1-10.txt AC 840 ms 55480 KB
subtask1-11.txt AC 927 ms 55504 KB
subtask1-12.txt AC 911 ms 55508 KB
subtask1-13.txt AC 932 ms 55508 KB
subtask1-14.txt AC 842 ms 55408 KB
subtask1-15.txt AC 912 ms 55504 KB
subtask2-01.txt AC 895 ms 57684 KB
subtask2-02.txt AC 1008 ms 62048 KB
subtask2-03.txt AC 1062 ms 92252 KB
subtask2-04.txt AC 1391 ms 98744 KB
subtask2-05.txt AC 1362 ms 99036 KB
subtask2-06.txt AC 1439 ms 99900 KB
subtask2-07.txt AC 1290 ms 98284 KB
subtask2-08.txt AC 1479 ms 99928 KB
subtask2-09.txt AC 1450 ms 99840 KB
subtask2-10.txt AC 1446 ms 99924 KB
subtask2-11.txt AC 1466 ms 99924 KB
subtask2-12.txt AC 1448 ms 99896 KB
subtask2-13.txt AC 1456 ms 99776 KB
subtask2-14.txt AC 1552 ms 99888 KB
subtask2-15.txt AC 1465 ms 99724 KB